关闭

Django Auth注册

标签: Django python 学习笔记django
1073人阅读 评论(0) 收藏 举报
  1. 建立level_1项目:
  2. django-admin.py startproject level_1
  3. 新建Accounts App: 
  4. cd level_1
  5. manage.py startapp accounts
  6. 仅仅两行代码,Django能为我们配置了大部分的东西(当然还需要配置点东西,如指定数据库等,参照实例源码吧)。接下来就是实例的核心部分了,我们集中精力编写好它们。

  7. 因为本人喜欢先从urls入手,因为从urls入手最能整体把握整个实例。实例有4个功能点:首页的欢迎体验;注册新的用户;用户登录,最后登陆后的注销。思路明确了,所以urls可以写成:
  8. 1 url(r'^$', 'accounts.views.index',name="index"),
  9. 2 url(r'^accounts/index$', 'accounts.views.index',name="accounts_index"),
  10. 3 url(r'^accounts/register$', 'accounts.views.register',name="register"),
  11. 4 url(r'^accounts/login$', 'accounts.views.login',name="login"),
  12. 5 url(r'^accounts/logout$', 'accounts.views.logout',name="logout"),

  13. 第一行代码是附带的,相当直接输入域名(不指定页面或者action)的时候,默认指向到一个页面。它和第二行代码都是指向到首页。
  14. 这几行代码的的url函数,第一个参数代表在浏览器上url地址,第二个参数代表在浏览器上输入url地址后,指向views上的某个action;第三个参数是别名,供template模板使用。
  15. 比如浏览器上输入:http://域名/accounts/index  的时候,django会告诉浏览器 这个地址应该指向到 accounts app视图views的index 的action上。

  16. 接下来就是编写accounts app 的 views部分了;编好urls后,基本就知道views有几个action(方法)了;我们统筹一下如下:
  17. def index(request):
  18.     pass

  19. def register(request):
  20.     pass

  21. def login(request):
  22.     pass

  23. def logout(request):
  24.     pass

  25. 每个具体action实现思路没有清晰之前,我们可以像上面那样 把骨架定下来。然后就是对每个action构思了。
  26. 首页我们做个简单的东西,当用户没有登录时,显示:欢迎您 游客!  但当用户登录后就要显示:欢迎您 ***(用户昵称)了。
  27. template_var={"w":_(u"欢迎您 游客!")}
  28.     if request.user.is_authenticated():
  29.         template_var["w"]=_(u"欢迎您 %s!")%request.user.username
  30.     return render_to_response("accounts/welcome.html",template_var,\
  31.                                         context_instance=RequestContext(request))
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:373457次
    • 积分:9118
    • 等级:
    • 排名:第2108名
    • 原创:527篇
    • 转载:34篇
    • 译文:13篇
    • 评论:41条
    我的站点

    这里只是我的备份地方

    DCOS
    博客专栏
    文章分类