Django:“加载”做啥(在模板文件中)?
Posted
技术标签:
【中文标题】Django:“加载”做啥(在模板文件中)?【英文标题】:Django: what does "load" do (in a template file)?Django:“加载”做什么(在模板文件中)? 【发布时间】:2010-11-06 02:26:31 【问题描述】:因为“加载”对于搜索来说太笼统了:
“加载”的目的是什么?在这种特殊情况下它有什么作用? - 在模板文件中,base_weblog.html,
% load weblog %% render_month_links %
是否有一些命名约定用于“加载”到 做它的工作?例如。文件夹和/或文件的名称和/或 类名?
“加载”的文档在哪里,您能详细说明一下吗?
详情:
示例来自 http://www.djangoproject.com/ - 直接下载地址是 通过http://shrinkster.com/17g8。
部分文件夹结构(没有文件扩展名的项目是文件夹):
django_website
apps
accounts
aggregator
blog
urls.py
models.py
class Entry(models.Model)
templatetags
weblog.py
contact
docs
templates
base_weblog.html
aggregator
blog
entry_archive.html
entry_archive_year.html
month_links_snippet.html
entry_archive_month.html
entry_detail.html
entry_snippet.html
entry_archive_day.html
comments
contact
docs
feeds
flatfiles
flatpages
registration
【问题讨论】:
确保 blog.templatetags 在 settings.py 的 INSTALLED_APPS 元组中。这为我解决了问题。 从 custom_filter.py 文件中加载数据 【参考方案1】:load
:
加载自定义模板标签集。
更多信息请参见Custom tag and filter libraries。
【讨论】:
【参考方案2】:“加载”之后的“weblog”(在模板文件django_website/templates/base_weblog.html
中)指的是文件夹django_website/apps/blog/templatetags
中的文件weblog.py
。文件夹 templatetags
必须准确命名,并且必须包含一个名为 __init__.py
的文件(问题 2)。
“load”使自定义模板标签(在本例中为render_latest_blog_entries
和render_month_links
)可用于模板中,在本例中为django_website\templates\base_weblog.html
。 “加载”是一种安全和性能功能。
【讨论】:
以上是关于Django:“加载”做啥(在模板文件中)?的主要内容,如果未能解决你的问题,请参考以下文章
全局加载 Django“静态”模板标签库,而不在每个文件中显式加载它