在 Django 模板中访问 get 方法数据
Posted
技术标签:
【中文标题】在 Django 模板中访问 get 方法数据【英文标题】:Accessing get method data in Django Template 【发布时间】:2014-10-13 23:42:29 【问题描述】:我已经阅读了文档和其他内容,尝试了很多 tuts 但仍然没有运气。我想要实现的是显示自定义错误消息。
我有这个:/?message=success
并且想在我的 Django 模板中访问这些数据
class mysite(TemplateView):
template_name = 'index.html'
def get_context_data(self, **kwargs):
context = super(mysite, self).get_context_data(**kwargs)
return context
def get(self, request, *args, **kwargs):
return super(mysite, self).get(request, *args, **kwargs)
我如何在我的模板文件中访问它:
message
这没有输出。我需要的是 success 被阅读。然后我会在它的基础上做一个条件块。
【问题讨论】:
【参考方案1】:您可以通过将get_context_data
方法更改为
message
添加到模板上下文中
def get_context_data(self, **kwargs):
context = super(mysite, self).get_context_data(**kwargs)
context['message'] = self.request.GET.get('message', '') # default to empty string if not in GET data
return context
然后使用以下命令访问模板中的消息:
message
或者,确保您使用request template context processor,以使request
对象在您的模板中可用。
然后在您的模板中,您可以通过以下方式访问 GET 数据:
request.GET
和消息参数:
request.GET.message
【讨论】:
以上是关于在 Django 模板中访问 get 方法数据的主要内容,如果未能解决你的问题,请参考以下文章