我创建了一个templatetags
我的应用程序内的文件夹和名为的文件内posts.py
,我写了以下代码;
from django.template import Library, Node
from advancedviews.models import Post
register = Library()
class AllPost(Node):
def render(self,context):
context['all_posts'] = Post.objects.all()
return ''
def get_all_posts(parser,token):
return AllPost()
get_all_posts = register.tag(get_all_posts)
现在,我尝试将此模板标签加载到我的模板中;
{% load get_all_posts %}
但这给了我错误,'get_all_posts' is not a valid tag library: Template library get_all_posts not found, tried django.templatetags.get_all_posts,django.contrib.admin.templatetags.get_all_posts
这个模板有什么错误或者我在这里错过了什么。
With load
您需要使用库的名称,而不是标签 - 所以posts
在你的情况下。
(我假设你也有一个空白__init__.py
在 templatetags 目录中,并且应用程序位于INSTALLED_APPS
).
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)