一、前言
1、目前用戶管理中,郵箱驗(yàn)證是無法使用的。
2、需要我們手動(dòng)補(bǔ)充代碼完善郵箱驗(yàn)證功能(除此之外,后面的全局設(shè)置也依賴于這個(gè)用戶管理模塊)。
3、Let's go!
二、目錄結(jié)構(gòu)總覽
1、本part,我們?cè)谶@個(gè)結(jié)構(gòu)下進(jìn)行代碼填充:
Project 目錄 (Django-Xadmin學(xué)習(xí)項(xiàng)目)
|
|-- app (應(yīng)用程序目錄)
| |-- users (用戶管理文件夾)
| | `-- models.py
...
三、新建users APP
1、使用pycharm創(chuàng)建app,Tools 工具欄運(yùn)行 run manage.py Task,輸入:
startapp users

四、移動(dòng)users文件夾
1、依照第二章目錄結(jié)構(gòu),移動(dòng)users文件夾到app文件夾下。
五、填充代碼
后面發(fā)現(xiàn)這個(gè)郵箱驗(yàn)證的代碼沒有作用,可以忽略第1步的填充代碼
1、在project/app/users/models.py,填充代碼:
# -*- coding: utf-8 -*-
from datetime import datetime
from django.db import models
# Create your models here.
class EmailVerifyRecord(models.Model):
"""郵箱驗(yàn)證碼models"""
code = models.CharField(max_length=20, verbose_name=u'驗(yàn)證碼')
email = models.EmailField(max_length=50, verbose_name=u'郵箱')
# 郵箱驗(yàn)證碼有兩種類型:注冊(cè)和找回忘記的密碼
send_type = models.CharField(choices=(('register', u'注冊(cè)'),('forget',u'找回密碼')), max_length=10)
# 驗(yàn)證碼發(fā)送時(shí)間
# 這里注意now后面不能加(),加了時(shí)間就是類編譯的時(shí)間,不加就是實(shí)例化的時(shí)間,這里是需要實(shí)例化時(shí)間
send_time = models.DateTimeField(default=datetime.now)
class Meta:
verbose_name = u'郵箱驗(yàn)證碼'
verbose_name_plural = verbose_name
2、在project/xadmin_learn/settings.py中注冊(cè)app:
# Application definition
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
# 添加以下兩個(gè)app配置
'xadmin',
'crispy_forms',
'app.users', # 注冊(cè)App
]
3、在數(shù)據(jù)庫生成新定義的表,Tools 工具欄運(yùn)行 run manage.py Task輸入:
makemigrations users
migrate users

4、數(shù)據(jù)庫多了一張郵箱驗(yàn)證的表
如果你忽略第1步的填充代碼,那么這一步也順便忽略吧...

六、寫在最后
后面發(fā)現(xiàn)還是發(fā)不了郵箱驗(yàn)證碼,估計(jì)是沒安裝email依賴或其他原因?qū)е碌?。先繼續(xù)吧。。。