当前位置: 首页 > news >正文

ps网站子页怎么做翻书效果的网站

ps网站子页怎么做,翻书效果的网站,百度我的网站,建网站买什么主机✨✨ 欢迎大家来到景天科技苑✨✨ #x1f388;#x1f388; 养成好习惯#xff0c;先赞后看哦~#x1f388;#x1f388; #x1f3c6; 作者简介#xff1a;景天科技苑 #x1f3c6;《头衔》#xff1a;大厂架构师#xff0c;华为云开发者社区专家博主#xff0c;… ✨✨ 欢迎大家来到景天科技苑✨✨ 养成好习惯先赞后看哦~ 作者简介景天科技苑 《头衔》大厂架构师华为云开发者社区专家博主阿里云开发者社区专家博主CSDN新星创作者掘金优秀博主51CTO博客专家等。 《博客》Python全栈前后端开发人工智能js逆向App逆向网络系统安全数据分析Djangofastapiflask等框架linuxshell脚本等实操经验网站搭建面试宝典等分享。 所属的专栏flask框架零基础进阶应用实战教学 景天的主页景天科技苑 文章目录 Jinja2模板引擎模板基本使用pycharm未识别模板文件配置模板输出变量总结 Jinja2模板引擎 flask在执行过程中的流程 Flask内置的模板引擎Jinja2它的设计思想来源于 Django 的模板引擎DTP(DjangoTemplates)并扩展了其语法和一系列强大的功能。 Flask提供的 render_template 函数封装了该模板引擎Jinja2render_template 函数的第一个参数是模板的文件名后面的参数都是键值对表示模板中变量对应的数据值。 我们在安装flask的时候就依赖安装了Jinja2 模板基本使用 在flask应用对象创建的时候设置template_folder参数默认值是templates也可以自定义为其他目录名需要手动创建模板目录。 from flask import Flask, render_template app Flask(__name__, template_foldertemplates)2.在手动创建 templates 目录下创建一个模板html文件 index.html代码 !DOCTYPE html html langen headmeta charsetUTF-8title{{title}}/title /head bodyh1{{content}}/h1 /body /html3.在视图函数设置渲染模板并设置模板数据 from flask import Flask, render_template #通过template_folder参数指定模板路径目录app Flask(__name__, template_foldertemplates)app.route(/) def index():title 网页标题content 网页正文内容#这里写模板文件。基于templates来写路径locals()可以收集局部变量成字典类型数据此处使用星星打散的方式将字典数据转化为键值对形式传参#类似于这种# return render_template(index.html, titletitle,contentcontent)return render_template(index.html, **locals())if __name__ __main__:app.run()运行程序浏览器访问可以看到网页标题和网页内容都是我们设置的字段内容 flask中提供了2个加载模板的函数render_template与render_template_string。 render_template基于参数1的模板文件路径读取html模板内容返回渲染后的HTML页面内容类型是字符串不是response对象。 render_template_string基于参数1以字符串的方式传参的模板内容返回渲染后的HTML页面内容。 代码案例 from flask import Flask, render_template,render_template_stringapp Flask(__name__, template_foldertemplates)app.route(/) def index():title 网页标题content 网页正文内容print(locals())# 这里写模板文件。基于templates来写路径locals()可以收集局部变量成字典类型数据此处使用星星打散的方式将字典数据转化为键值对形式传参# return render_template(index.html, titletitle,contentcontent)html render_template(index.html, **locals())print(rend_template返回,html,type(html))return html#rend_template_string app.route(/tmp) def tmp():title 网页标题content 网页正文内容#将网页内容以字符串的形式传参temp !DOCTYPE html html langen headmeta charsetUTF-8title{{title}}/title /head bodyh1{{content}}/h1 /body /htmlhtml render_template_string(temp, **locals())print(rend_template_string返回,html, type(html))return htmlif __name__ __main__:app.run(debugTrue)浏览器访问/tmp路径url。返回也是字符串 pycharm未识别模板文件配置 pycharm中当我们设置了模板文件但是pycharm并未识别 此时我们可以设置当前项目的模板语言 设置路径 files/settings/languages frameworks/python template languages。 设置下拉框为jinja2保存 设置指定目录为模板目录鼠标右键-Mark Directory as …- Template Folder 此时pycahrm就不再有警告了 模板输出变量 {{ 变量名 }}这种 {{ }} 语法叫做 变量代码块 Jinja2 模版中的变量代码块的输出的内容可以是Python的任意类型数据或者对象只要它能够被 Python 的 __str__ 方法或者str()转换为一个字符串就可以比如可以通过下面的方式显示一个字典或者列表中的某个元素: 视图代码 from flask import Flask, render_template, session, gapp Flask(__name__, template_foldertemplates)app.config[SECRET_KEY] my secret keyapp.route(/) def index():# 基本类型num 100num2 3.14is_bool Truetitle 网页标题# 复合类型set_var {1,2,3,4}list_var [小明, 小红, 小白]dict_var {name: root, pwd: 1234557}tuple_var (1,2,3,4)# 更复杂的数据结构book_list [{id: 10, title: 图书标题10a, description: 图书介绍,},{id: 13, title: 图书标题13b, description: 图书介绍,},{id: 21, title: 图书标题21c, description: 图书介绍,},]session[uname] rootg.num 300html render_template(index.html, **locals())return htmlapp.route(/user/uid) def user1(uid):return okapp.route(/user) def user2():return okif __name__ __main__:app.run(debugTrue)模板代码 !DOCTYPE html html langen headmeta charsetUTF-8title{{title}}/title /head bodyp基本类型brnum {{num}}br{{num2}}br{{is_bool}}br{{title}}br/pp{# 此处为模板注释 #}复合类型br {# {{set_var}}br#}{{set_var.pop()}}br{{list_var}}br{{list_var[1]}}br{{list_var.0}}br{{list_var[-1]}}点语法不能写负数下标br{{dict_var}}br{{dict_var[name]}}br{{dict_var.name}}br{{tuple_var}}br{{tuple_var.0}}br/pp更复杂的数据结构br{{book_list}}br{{book_list.2}}br{{book_list.1.title}}br/pp内置的全局变量 br{{request}}br{{request.path}}br{{request.method}}br{{session.get(uname)}}br{{g.num}}br/p{# 配置信息#}p{{ config.ENV }}/pp{{ url_for(user1, uid3) }}/p {# /user/3 #}p{{ url_for(user2, uid3) }}/p {# /user?uid3 #} /body /html页面访问 代码分析 使用 {# #} 进行注释注释的内容不会在html中被渲染出来 {# h1{{ title }}!!/h1#} {# p{{ data_list }}/p#} {# p{{ data_list.1 }}/p#}p{{ data_list[-1]}}/pp{{ data_list | last }}/pp{{ data_list | first }}/pp{{ data_dict }}/pp{{ data_dict.name }}/pp{{ user_list.0 }}/p {# p{{ user_list.0.name }}/p#}##模板中内置的变量和函数 你可以在自己的模板中访问一些 Flask 默认内置的函数和对象 ####config 你可以从模板中直接访问Flask当前的config对象: p{{ config.ENV }}/p p{{ config.DEBUG }}/p####request 就是flask中代表当前请求的request对象 p{{ request.url }}/p p{{ request.path }}/p p{{ request.method }}/p####session 为Flask的session对象显示session数据 {{session.get(uname)}}####g变量 在视图函数中设置g变量的 name 属性的值然后在模板中直接可以取出 {{ g.name }} ####url_for() url_for会根据传入的路由器函数名,返回该路由对应的URL,在模板中始终使用url_for()就可以安全的修改路由绑定的URL,则不比担心模板中渲染出错的链接: p{{ url_for(user1, uid3) }}/p {# /user/3 #}p{{ url_for(user2, uid3) }}/p {# /user?uid3 #}浏览器查看 如果我们定义的路由URL是带有参数的,则可以把它们作为关键字参数传入url_for(),Flask会把他们填充进最终生成的URL中: {{ url_for(index, id1)}} /index/1 {# /index/int:id id被声明成路由参数 #} /index?id1 {# /index id被声明成查询参数 #}总结 flask内置的模板引擎Jinja2它的设计思想来源于 Django 的模板引擎DTP(DjangoTemplates)并扩展了其语法和一系列强大的功能。学会使用Jinja2自己可以轻松开发出一个自己喜欢的网站 我们在模板中多用变量少用函数函数放在视图函数中使用这才符合MVT思想的路线。喜欢的朋友可以一键三连flask高阶用法持续更新中
http://www.zqtcl.cn/news/684578/

相关文章:

  • 网站上线有什么线上活动可以做龙华建网站多少钱
  • 门户网站系统开发建设电脑优化
  • 公司建网站多少钱一个月服务佳的广州网站建设
  • 怎么创建网站建设徐州网站建设要多少钱
  • 微网站功能列表菜市场做建筑设计图库的网站设计
  • 制作网站支付方式定制网站开发哪里好
  • 常州网络网站建设行情软件app网站大全下载
  • 出台网站集约化建设通知彩票网站开发的
  • 怎样创建个人的网站怎么学做网站
  • 小江高端网站建设网站建设中可能升级
  • 网站建设的原则有哪些内容wordpress的底部版权
  • 一个网站建立团队大概要多少钱大连专业网站建设
  • 宁波网站公司相册插件wordpress
  • 科技网站域名大型网站开发团队
  • 温岭建设规划局网站注册新公司网上怎么核名
  • dede网站移动端怎么做golang 网站开发 开源
  • 织梦网站导航固定沈阳男科医院在线咨询免费
  • 四川华鸿建设有限公司网站网站建设需求文案
  • 汕头东莞网站建设怎么制作微信小程序app
  • 网站建设预算方案模板怎么做网络推广网站
  • 顺义网站开发wordpress内容主题模板下载
  • 永康做网站的化工网站模板免费下载
  • 潍坊高密网站建设如何做网页推广
  • 杭州房产网站建设wordpress 替换谷歌字体
  • 陕西省建设工程质量安全监督总站网站开发公司与施工单位工程造价鉴定报告
  • 嘉兴网站建设企业阿里巴巴国际贸易网站
  • 临沂手机网站建设珠海手机网站建设价格
  • 56m做图片视频的网站是什么软件开发和大数据哪个前景好
  • 郑州网站建设哪家做快消品的网站
  • 太原做网站费用东莞it外包