如果我想显示 request.META 字典的多个项目:
我怎样才能把例如两个字符串格式:
def myurl(request):
return HttpResponse("You are %s" % request.META['USER'], "Your IP Adress is " % request.META['REMOTE_ADDR'])
不起作用。
此外,任何想法如何我可以显示/提取该字典的选择性项目。
如果我想通过模板运行多个。我如何将其插入 html 模板中:
例如
{{request.META }} 。这对所有人都有效吗?如何在每一行中显示它们?
如果我想要例如只是:
HTTP_COOKIE
QUERY_STRING
HTTP_CONNECTION
显示该 3 的最佳方式是什么?
谢谢!
最佳答案
更新(阅读OP对此答案的评论后)
这里的模板
只是一个带有嵌入格式选项的字符串。
1)它不必被称为template
def myurl(request):
place_holders = "You are %(user)s; your IP address is %(ipaddress)s"
options = dict(user = request.META['USER'], ipaddress = request.META['REMOTE_ADDR'])
return HttpResponse(place_holders % options)
2)您可以完全取消它,使其内联。这纯粹是编码风格/偏好的问题。
def myurl(request):
return HttpResponse("You are %s; your IP address is %s" % (request.META['USER'], request.META['REMOTE_ADDR']))
原始答案
对问题第一部分的快速而肮脏的回答:
def myurl(request):
template = "You are %(user)s; your IP address is %(ipaddress)s"
options = dict(user = request.META['USER'], ipaddress = request.META['REMOTE_ADDR'])
return HttpResponse(template % options)
关于Django 请求.META,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3493239/