为了将新变量自动注入模板的上下文中,Flask 中存在上下文处理器context_processor。上下文处理器在呈现模板之前运行,并且能够将新值注入模板上下文。上下文处理器是返回字典的函数。然后,对于应用程序中的所有模板,此字典的键和值将与模板上下文合并:
用法如下所示,这只是一个例子:
上面的上尺余笑下文处理器是一个陵含名为 user 的变量在模板中可用,其值为 g.user。这个例子不是很有趣,因为g无论如何都可以在模板中使用,但它给出了它是如何工作的。
变量不限于值上下文处理器还可以使函数可用于模板(因为Python允许传递函数):
上面的上下文处理器使format_price函数可用于所有模板:
您还可以将format_price构建为模板筛选器,但这演示了如何在上下文处理器中传递函数。
知道了上下文处理器的用法,实现这个功能就非常简单了!
在RealProject目录的__init__.py中插入如下一个上下文回调函数
这个函数通过毁戚limit()方法查询出前6个数据,并通过一个字典返回,之后我们还需要将该回调函数注册到app的工厂函数当中!
在app/blog/templates/base.html中循环查出我们返回的数据即可
在app/blog/views.py文件中的index首页视图函数中实现
这个视图函数中的查询逻辑在实现文章管理的时候已经实现过,这里唯一不同的区别就是我给这个返回数据新增了一个img的属性,因为在数据库我们没有设计文章形象图字段,我们用这种方式弥补,在imgs的列表中预设一些图片的url地址,之后随机抽取一个赋值给img属性,这样在模板中直接调用这个img属性就会获取到图片的url!
在app/blog/templates/base.html中替换相关循环数据
asmazon.com为你解答:你好!如何在网站中插入博客粗旅程序?你可以先在网站导航上,填加博客链接,在将博客程序,上传到网站文件所在空间的子目录(新建一个)!然后按步岩做凳骤安装,这里推荐wordpress,安装完后,来做做自动更新,使用胡李社会化插件来实现!具体到wordpress官方看看使用说明!"首页"选项不见了,你直接点上面的宽档灶"页面"选项,然后选择首页选项添加到"菜单结构".图示如下:
然后你就会发现首页既有分类目录又有蠢塌首页慎扮选项了!记得保存!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)