Django-taggit-templatetags2 属性错误

Posted

技术标签:

【中文标题】Django-taggit-templatetags2 属性错误【英文标题】:Django-taggit-templatetags2 Attribute Error 【发布时间】:2017-08-02 05:56:32 【问题描述】:

我需要帮助,使用标签块作为包含该标签的所有帖子的链接。使用 Django-taggit-templatetags2。

'function'对象没有属性'filter'

tags.html

      <h2>Tags</h2>
      % get_taglist as tags %
      % for tag in tags %
      <h4><a href="tag">tag xtag.num_times</a></h4>
      % endfor %

urls.py

url(r'^blog/tags/(?P<slug>[a-z0-9]+)/$', views.TagDetailView.as_view(), name = 'tag'),

views.py

class TagDetailView(DetailView):
    template_name = 'home/tag.html'
    context_object_name = 'tag'

    def get_queryset(self):
        return Post.objects.all

追溯:

内部文件“/home/vinyasa/web_dev/practice/venv/lib/python3.5/site-packages/django/core/handlers/exception.py” 39. response = get_response(request)

_get_response 中的文件“/home/vinyasa/web_dev/practice/venv/lib/python3.5/site-packages/django/core/handlers/base.py” 187. response = self.process_exception_by_middleware(e, request)

_get_response 中的文件“/home/vinyasa/web_dev/practice/venv/lib/python3.5/site-packages/django/core/handlers/base.py” 185. response = Wrapped_callback(request, *callback_args, **callback_kwargs)

视图中的文件“/home/vinyasa/web_dev/practice/venv/lib/python3.5/site-packages/django/views/generic/base.py” 68. return self.dispatch(request, *args, **kwargs)

调度中的文件“/home/vinyasa/web_dev/practice/venv/lib/python3.5/site-packages/django/views/generic/base.py” 88. return handler(request, *args, **kwargs)

获取文件“/home/vinyasa/web_dev/practice/venv/lib/python3.5/site-packages/django/views/generic/detail.py” 115. self.object = self.get_object()

get_object 中的文件“/home/vinyasa/web_dev/practice/venv/lib/python3.5/site-packages/django/views/generic/detail.py” 43. queryset = queryset.filter(**slug_field: slug)

异常类型:/blog/tags/mods/ 中的 AttributeError 异常值:'function' 对象没有属性 'filter'

【问题讨论】:

【参考方案1】:

你忘记了views.py中的一对括号:

class TagDetailView(DetailView):
    template_name = 'home/tag.html'
    context_object_name = 'tag'

    def get_queryset(self):
        return Post.objects.all()

【讨论】:

以上是关于Django-taggit-templatetags2 属性错误的主要内容,如果未能解决你的问题,请参考以下文章