django自帶了用戶表。
-- auto-generated definition create table auth_user (id int auto_incrementprimary key,password varchar(128) not null,last_login datetime(6) null,is_superuser tinyint(1) not null,username varchar(150) not null,first_name varchar(30) not null,last_name varchar(30) not null,email varchar(254) not null,is_staff tinyint(1) not null,is_active tinyint(1) not null,date_joined datetime(6) not null,constraint usernameunique (username) );
?
如果我們需要添加某些字段,可以這樣做:
class User(AbstractUser):"""用戶模型類"""mobile = models.CharField(max_length=11, verbose_name='手機號') class Meta:db_table = 'tb_users'
?
還沒結束,因為這時候有兩個User類(自帶的,和我們定義的),所以需要在設置文件指定用我們自定義的表:
# 在項目配置文件中,指定使用自定義的用戶模型類
AUTH_USER_MODEL = 'user.User'
?
注意:
1. 必須確保在執行第一次遷移之前,就定義好User類并配置好AUTH_USER_MODEL屬性,否則遷移時會出錯
2. 如果因以上原因出錯,解決方式:刪除所有數據庫表以及users應用下的所有遷移文件,重新遷移!