django實現使用者註冊例項講解
阿新 • • 發佈:2020-01-09
建立一個apps包 專門來放子應用
建立users子應用 處理使用者事務
追加導包路徑
在settings中用 print(sys.path) 檢視現有導包路徑
sys.path.insert(0,'/home/python/oldproject/meiduo/meiduo/apps')
但是這樣過於low 換成下面這樣
sys.path.insert(0,os.path.join(BASE_DIR,'apps'))
這樣就可以簡化導包方式
自定義使用者模型類
django自帶的使用者模型類User
#位置 django.contrib.auth.models.User #繼承自AbstraUser AbstraUser裡定義了使用者具備的欄位 如使用者名稱 密碼 郵箱 還封裝了校驗密碼等一系列方法 class User(AbstractUser): """ Users within the Django authentication system are represented by this model. Username,password and email are required. Other fields are optional. """ class Meta(AbstractUser.Meta): swappable = 'AUTH_USER_MODEL'
所以我們要為使用者模型類再增加一個手機號碼的欄位 apps.users.models 中定義
from django.db import models from django.contrib.auth.models import AbstractUser class User(AbstractUser): #自定義使用者模型類 mobile = models.CharField(max_length=11,unique=True,verbose_name='手機號') class Meta: db_table = 'tb_users' #自定義表名 verbose_name = '使用者' # 在admin站點管理中顯示這個表叫什麼 verbose_name_plural = verbose_name
由於django有預設使用的使用者模型類 'django.conf.global_settings' 中
AUTH_USER_MODEL = 'auth.User' #這裡還是之前未自定義的使用者模型類
我們要重新指定 在settings中
#AUTH_USER_MODEL = '應用名.模型類名' # 指定本專案使用者模型類 AUTH_USER_MODEL = 'users.User'
定義完模型類之後別忘了建立遷移檔案 和執行遷移檔案
命令列中
python manage.py makemigrations python manage.py migrate
以上就是本次介紹的全部相關知識點例項程式碼,感謝大家的學習和對我們的支援。