如何扩展django用户默认模型数据库

时间:2017-03-22 21:25:51

标签: python html mysql django database

我目前正在Django创建一个在线电子商务网站,但是,我正在使用以下库,该库已经有一个现成的用户表。

from django.contrib.auth.models import User


class UserForm(forms.ModelForm):
    password = forms.CharField(widget=forms.PasswordInput)
    phone = forms.CharField(max_length=30)
    address = forms.CharField(max_length=100)
class Meta:
    model = User
    fields = ['username','first_name','last_name', 'email', 'password','phone','address']

我的产品和购物篮是在models.py中制作的,它们工作正常,

然而,我遇到的问题是我至少需要拥有的用户字段:姓名,电子邮件,电话和地址。但是当我查看创建的表时,它只有,用户名,first_name,last_name和密码,它不会在创建的表中实现电话和地址!

image of tables through admin

有谁知道我能做到这一点?

1 个答案:

答案 0 :(得分:0)

要扩展用户模型,请尝试以下操作:

<强> models.py

from django.contrib.auth.models import AbstractUser

class User(AbstractUser):
    phone = models.CharField(max_length=255)
    address = models.TextField()

    def __unicode__(self):
        return self.username