django 认证系统--3
2016-09-07 15:58
253 查看
WEB request中的认证
django使用sessions和middleware和reqeust对象联系在一起
它们通过给每一个reqeust请求添加一个request.user属性来代表当前用户。如果用户没有登录,那么request.user将是AnonymousUser的对象,如果登录了,那么就是User的对象
View Code
django使用sessions和middleware和reqeust对象联系在一起
它们通过给每一个reqeust请求添加一个request.user属性来代表当前用户。如果用户没有登录,那么request.user将是AnonymousUser的对象,如果登录了,那么就是User的对象
{% extends "base.html" %} {% block content %} {% if form.errors %} <p>Your username and password didn't match. Please try again.</p> {% endif %} {% if next %} {% if user.is_authenticated %} <p>Your account doesn't have access to this page. To proceed, please login with an account that has access.</p> {% else %} <p>Please login to see this page.</p> {% endif %} {% endif %} <form method="post" action="{% url 'login' %}"> {% csrf_token %} <table> <tr> <td>{{ form.username.label_tag }}</td> <td>{{ form.username }}</td> </tr> <tr> <td>{{ form.password.label_tag }}</td> <td>{{ form.password }}</td> </tr> </table> <input type="submit" value="login" /> <input type="hidden" name="next" value="{{ next }}" /> </form> {# Assumes you setup the password_reset view in your URLconf #} <p><a href="{% url 'password_reset' %}">Lost password?</a></p> {% endblock %}
View Code
logout(request, next_page=None, template_name='registration/logged_out.html', redirect_field_name='next',current_app=None, extra_context=None)
logout_then_login(request, login_url=None, current_app=None, extra_context=None)
password_change(request, template_name='registration/password_change_form.html',post_change_redirect=None, password_change_form=PasswordChangeForm, current_app=None,extra_context=None)
password_change_done(request, template_name='registration/password_change_done.html',current_app=None, extra_context=None)
password_reset(request, is_admin_site=False, template_name='registration/password_reset_form.html',email_template_name='registration/password_reset_email.html',subject_template_name='registration/password_reset_subject.txt', password_reset_form=PasswordResetForm,token_generator=default_token_generator, post_reset_redirect=None, from_email=None, current_app=None,extra_context=None, html_email_template_name=None, extra_email_context=None)
password_reset_done(request, template_name='registration/password_reset_done.html', current_app=None,extra_context=None)
password_reset_confirm(request, uidb64=None, token=None,template_name='registration/password_reset_confirm.html', token_generator=default_token_generator,set_password_form=SetPasswordForm, post_reset_redirect=None, current_app=None, extra_context=None)
password_reset_complete(request, template_name='registration/password_reset_complete.html',current_app=None, extra_context=None)
相关文章推荐
- 1010. Lehmer Code (35)
- UVA - 11292 Dragon of Loowater
- mongo语句优化分析
- 大叔,谈创业路上的几条真理(中)
- Django模型层Meta内部类详解
- 初识Django框架
- UVa 10618 Tango Tango Insurrection
- Go-Type
- mongo语句大全
- Mongo高级查询
- Mongo复制集
- [USACO NOV06 GOLD]block 路障(Spfa)
- mongo复制集+分片实现海量数据存储
- 想学Storm吗?Let‘s go(1)
- golang面向对象初识
- golang反射初试
- golang:interface{}类型测试
- golang构造函数与转换函数
- golang处理错误的艺术
- golang的nil