def choice(request):
return render(request,'LoginPage/choice.html')
这是我的views.py文件中的示例视图函数。在函数调用中使用request参数是什么?是否可以用来保存用户在浏览网站时登录的记录?我对django来说真的很新。请帮忙
答案 0 :(得分:0)
request
用于生成此响应的请求对象。
如果您在模板设置中设置django.template.context_processors.request
(默认情况下已完成),则每个RequestContext都将包含一个变量请求,即当前的HttpRequest。
作为HttpRequest的request
变量包含有关当前请求的数据。可以通过属性访问。
例如,
在视图中,请求可以作为
访问def choice(request):
if request.user.is_authenticated():
... # Do something for logged-in users.
else:
... # Do something for
匿名用户。
在模板中,您可以使用{% if user.is_authenticated %}
(如果设置了auth上下文处理器)
{% if user.is_authenticated %}
<h1>Hi Welcome back</h2>
{% elif %}
<h1>Hi please login</h2>
{% endif %}
上记录了完整的属性列表
答案 1 :(得分:0)
这是我在项目中的一个简单示例,展示了如何使用请求参数来保持访问次数
def about(request):
if request.session.test_cookie_worked():
print("TEST COOKIE WORKED!")
request.session.delete_test_cookie()
visitor_cookie_handler(request)
visits = request.session['visits']
context_dict = {'visits': visits}
print(request.environ) # Other data that you can access through the request argument
print(request.user)
return render(request, 'rango/about.html', context_dict)
visitor_cookie_handler,它也接受与参数相同的请求
def visitor_cookie_handler(request):
# Use COOKIES.get() to retrieve a specific cookie
# All cookie values are returned as strings
visits = int(get_server_side_cookie(request, 'visits', '1'))
last_visit_cookie = get_server_side_cookie(request,
'last_visit',
str(datetime.now()))
last_visit_time = datetime.strptime(last_visit_cookie[:-7],
'%Y-%m-%d %H:%M:%S')
# If it's been more than a day since last visit..
if (datetime.now() - last_visit_time).days > 0:
visits += 1
request.session['last_visit'] = str(datetime.now())
else:
visits = 1
request.session['last_visit'] = last_visit_cookie
# Update/set the visits cookie
request.session['visits'] = visits
答案 2 :(得分:0)
您可以将request
用于以下内容: post
以及来自 htm表单的 get
请求您要设置的strong>或 session
。
关注此链接更多信息: