【发布时间】:2013-07-13 19:36:38
【问题描述】:
这是我的other question 的延续,关于如何在应用程序 (Userena) 视图中包含额外的查询集(带有请求)。如果我按照@limelights 的建议做,我的代码就是这样的:
查看:
from django.views.generic import list_detail
def requestuserswampers(request):
qs = Thing.objects.filter(user=request.user)
return list_detail.object_list(
request,
queryset = Thing.objects.all(),
template_object_name = 'thing',
extra_context = {'swamp_things': qs},
)
网址:
url(r'^accounts/(?P<username>(?!signout|signup|signin)[\.\w-]+)/$',
requestuserswampers,
name='userena_profile_detail'),
这会生成TemplateDoesNotExist 错误:Template does not exist at myapp/swamp_things.html。
另一方面,如果我尝试使用 template_name = 'userena/profile_detail.html' 包含模板名称和位置,则会呈现正确的模板,但现在缺少一些上下文,例如通常在默认 userena 中呈现的用户信息“profile_detail”模板..
如何向允许请求的 Userena 配置文件详细信息视图添加额外的查询集,以便我可以根据登录用户过滤对象?感谢您的想法!
【问题讨论】:
-
嘿!如果您在使用这种方法时遇到很多问题,我建议您将视图函数重写为适当的函数,因为我认为这将是最好的! :) 不过,如果其他人还没有的话,我明天回家时会帮助你! :)
-
谢谢@limelights。非常感谢您的帮助!
标签: django view filtering django-queryset