為了避免做廣告的嫌疑,以後會把熙魷記3個字去掉了。
現在我們完善登陸和註冊功能。
首先,我們要為站點建立乙個超級使用者python manage.py createsuperuser
然後根據命令列提示輸入使用者名稱、郵箱和密碼。
使用者登入註冊我們放在guys裡,所以我們在guys/urls.py裡的**
# -*- coding: utf-8 -*-
from django.conf.urls import patterns, url
from guys.views.accounts import registerview
urlpatterns = patterns('',
url(r'^whatsup/$', 'django.contrib.auth.views.login', name='login'),
url(r'^seeyou/$', 'guys.views.accounts.logout', name='logout'),
url(r'^welcome/$', registerview.as_view(), name='register'),
)接下來,我們要在配置檔案裡新增
login_redirect_url = "home" # 登陸後跳轉的頁面
login_url = "login" # 登陸的url鏈結 (http://host/whatsup)
logout_url = "logout" # 退出的url鏈結 (http://host/seeyou)
註冊
刪掉guys/views.py,新建guys/views/資料夾,個人習慣,我不太喜歡把所有的邏輯都放在乙個views檔案裡。在guys/views/__init__.py和guys/views/accounts.py
使用者註冊的賬戶功能,比如登陸註冊退出修改密碼等都在accounts.py裡實現。
註冊功能,突然想用django的class-based views實現
# -*- coding: utf-8 -*-
from django.views.generic import view
from django.contrib.auth.views import logout_then_login
from ahead.utils.lazy import *
from django.contrib.auth.forms import registerform
class registerview(view):
def get(self, request):
form = registerform()
return render(request, "registration/register.html", )
def post(self, request):
form = registerform(request.post)
if form.is_valid():
pass
return render(request, "registration/login.html", )
django自帶的認證模組,模板都放在templates/registation目錄下,如果你需要自定義html頁面的話在ahead/templates/下新建乙個registation目錄,然後新建login.html。 2. 登入
登陸登陸我們使用django自帶的模組,django的驗證模組html頁面放在templates/registration/login.html
如果我們想要重寫html頁面,只需要在ahead/templates/下新建乙個registration目錄,然後再目錄下新建乙個login.html就可以覆蓋掉系統自帶的login.html。然後我們可以在login.html裡輸入}
試一下。
如果你想快速得到乙個登入功能,直接在url裡新增url(r'^whatsup/$', 'django.contrib.auth.views.login', name='login'),
無需多寫一行**,就可以直接使用。django,就是這麼簡單方便,又不失靈活性。
退出1) 直接使用auth view裡的url(r'^seeyou/$', 'django.contrib.auth.views.logout', name='logout'),
退出後返回登陸頁面
2) 也是django自帶的,但我的需求是使用者退出後跳到首頁。
# guys/views/accounts.py
from django.contrib.auth.views import logout_then_login
def logout(request):
return logout_then_login(request, '/') # 第二個引數要跳轉的路徑,如果沒有第二個引數則預設跳轉到登陸頁面
# guys/urls.py urlpatterns裡新增
url(r'^seeyou/$', 'guys.views.accounts.logout', name='logout'),
Django1 7開發部落格
基於最新的django1.7寫的,通俗易懂,非常適合新手入門。感謝博主!參考教程 教程目錄 使用django1.7開發部落格 1 入門篇 使用django1.7開發部落格 2 模型 使用django1.7開發部落格 3 部署 使用django1.7開發部落格 4 三部曲 使用django1.7開發部...
Django1 7學習筆記 二
一般的 都有管理後台,而django為我們提供了強大的自動化後台管理功能,今天我們就來看看怎樣建立用django建立乙個後台管理頁面 一.建立乙個管理員使用者 首先,我們需要建立誰可以登入到管理介面的使用者。執行下面的命令 python manage.py createsuperuser 別忘了先開...
django1 7模板路徑設定
首先附上我的django工程目錄結構 mysite db.sqlite3 manage.py mysite settings.py urls.py views.py wsgi.py init py django.contrib.admin django.contrib.auth django.con...