我尝试修改 django-wiki
功能
@register.inclusion_tag('wiki/includes/render.html', takes_context=True)
def wiki_render(context, article, preview_content=None):
if preview_content:
content = article.render(preview_content=preview_content)
else:
content = None
看起来像这样
@register.inclusion_tag('wiki/includes/render.html', takes_context=True)
def wiki_render(context, article, request, preview_content=None):
if preview_content:
content = article.render(preview_content=preview_content)
else:
content = None
if request.user.is_authenticated():
lastname = request.user.last_name
但是得到
'wiki_render' did not receive value(s) for the argument(s): 'request'
我必须更改什么才能修复错误
最佳答案
如果要访问request
对象,可以从context
中获取:
@register.inclusion_tag('wiki/includes/render.html', takes_context=True)
def wiki_render(context, article, preview_content=None):
request = context['request']
...
请注意,这需要将 'django.core.context_processors.request'
包含在 TEMPLATE_CONTEXT_PROCESSORS
中,但这已经是 prerequisite of django-wiki .
检查django-wiki的login_url
标签来源举个例子。
关于python - “wiki_render”未收到参数 : 'request' 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29183653/