宣告:本部落格的註冊登入退出功能將使用django-allauth,參考資源如下:
django-allaut**檔
django-allauth教程
# 《新增storm相關應用》
'storm',
# # 《新增allauth相關應用》
'django.contrib.sites',
'allauth',
'allauth.account',
'allauth.socialaccount',
'allauth.socialaccount.providers.github',
# ]注意:allauth對於站點設定django.contrib.sites有依賴,你必需也把它加入進去,同時設定site_id
# 多站點框架:
# 位於django.contrib.sites的site。
# site_id指定與特定配置檔案相關聯的site物件之資料庫的id。
site_id = 1
# 設定登入和註冊成功後重定向的頁面,預設是/accounts/profile/
login_redirect_url = "/"
# email setting
# 禁用註冊郵箱驗證
account_email_verification = 'none'
# 登入方式,選擇使用者名稱或者郵箱登入
account_authentication_method = "username_email"
# 設定使用者註冊的時候必須填寫郵箱位址
account_email_required = true
# 登出直接退出,不用確認
account_logout_on_get = true
你也可以新增其它設定選項來實現你所想要的功能, 比如設定郵件確認過期時間,限制使用者使用錯誤密碼登入的持續時間。
# 指定要使用的登入方法(使用者名稱、電子郵件位址或兩者之一)
account_authentication_method (="username" | "email" | "username_email")
# 郵件確認郵件的截止日期(天數)
account_email_confirmation_expire_days (=3)
# 註冊中郵件驗證方法:「強制(mandatory)」,「可選(optional)」或「否(none)」之一
account_email_verification (="optional")
# 郵件傳送後的冷卻時間(以秒為單位)
account_email_confirmation_cooldown (=180)
# 登入嘗試失敗的次數
account_login_attempts_limit (=5)
# 從上次失敗的登入嘗試,使用者被禁止嘗試登入的持續時間
account_login_attempts_timeout (=300)
# 更改為true,使用者一旦確認他們的電子郵件位址,就會自動登入
account_login_on_email_confirmation (=false)
# 更改或設定密碼後是否自動退出
account_logout_on_password_change (=false)
# 更改為true,使用者將在重置密碼後自動登入
account_login_on_password_reset (=false)
# 控制會話的生命週期,可選項還有:false,true
account_session_remember (=none)
# 使用者註冊時是否需要輸入郵箱兩遍
account_signup_email_enter_twice (=false)
# 使用者註冊時是否需要使用者輸入兩遍密碼
account_signup_password_enter_twice (=true)
# 使用者不能使用的使用者名稱列表
account_username_blacklist (=)
# 加強電子郵件位址的唯一性
account_unique_email (=true)
# 使用者名稱允許的最小長度的整數
account_username_min_length (=1)
# 使用從社會帳戶提供者檢索的字段(如使用者名稱、郵件)來繞過登錄檔單
socialaccount_auto_signup (=true)
# 設定登入後跳轉鏈結
login_redirect_url (="/")
# 設定退出登入後跳轉鏈結
account_logout_redirect_url (="/")
urlpatterns = [
url(r'^admin/', admin.site.urls),
# allauth
url(r'^accounts/', include('allauth.urls')),
# storm
url('', include('storm.urls', namespace='blog')), # blog
]
可以訪問哪個路由,取決於,blog/settings.py中allauth設定資訊
註冊
登入
下面是django_allauth所有內建的urls,均可以訪問的。可以去allauth/account/urls.py檢視
# 登入
/accounts/login/
# 註冊
/accounts/signup/
# 重置密碼
/accounts/password/reset/
# 退出登入
/accounts/logout/
# 設定密碼
/accounts/password/set/
# 改變密碼(需登入)
/accounts/password/change/
# 使用者可以新增和移除email,並驗證
/accounts/email/
# 管理第三方賬戶
/accounts/social/connections/
使用者詳細資訊是沒有的
/accounts/profile/
如果我希望使用者在註冊時提供更多資訊(比如公司名、**、住址等)
如果使用者在註冊後需要修改個人資訊怎麼辦?
由於每個開發者對使用者所需提供的額外資訊需求是不一樣的,所以沒有提供這個檢視和url。
因此django-allauth並沒有提供使用者詳情應用
使用者詳情請參考:
[個人部落格五|使用者個人資料profile擴充套件]
個人部落格四 註冊登入退出功能後台開發
宣告 本部落格的註冊登入退出功能將使用django allauth,參考資源如下 django allaut 檔 django allauth教程 新增storm相關應用 storm 新增allauth相關應用 django.contrib.sites allauth allauth.account...
個人部落格四 註冊登入退出功能後台開發
宣告 本部落格的註冊登入退出功能將使用django allauth,參考資源如下 django allaut 檔 django allauth教程 新增storm相關應用 storm 新增allauth相關應用 django.contrib.sites allauth allauth.account...
後台筆記3(登入退出功能樣式 了解token)
為什麼用token來記錄登入狀態,而不用session與cookie?如果存在跨域問題就用token來維持登入狀態,如果不存在跨域問題就用cookie和session。token的原理?這五步還是要記住的 token用來儲存登入狀態的,可以通過token驗證這個人是否登入,是登入成功後的唯一身份令牌...