Django模型出现问题



大家好,可能有人遇到了这样的问题。我正试图使用django.contrib.out.models.中的User表的一对一关系创建一个UserProfile模型

class Profile(models.Model):
user = models.OneToOneField(User, null=True, on_delete=models.CASCADE),
age = models.IntegerField(null=True, blank=True)
status = models.TextField(null=True, blank=True)
avatar = models.ImageField(null=True, blank=True)

但是当我用manage.py makemigrations创建迁移时,用户字段不存在

class Migration(migrations.Migration):
initial = True
dependencies = [
]
operations = [
migrations.CreateModel(
name='Profile',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('age', models.IntegerField(blank=True, null=True)),
('status', models.TextField(blank=True, null=True)),
('avatar', models.ImageField(blank=True, null=True, upload_to='')),
('created_at', models.DateTimeField(auto_now_add=True)),
('updated_at', models.DateTimeField(auto_now=True)),
],
options={
'verbose_name': 'User Profile',
'verbose_name_plural': 'User Profile',
'ordering': ['-created_at'],
},
),
]

我做错了什么?(

django 3.2.5版本Postgre13

提前感谢(

您还必须添加User模型。

from django.contrib.auth.models import AbstractUser

class User(AbstractUser):
pass

class Profile(models.Model):
user = models.OnetoOneField(User, on_delete=models.CASCADE)
...

您还需要将settings.AUTH_USER_MODEL指向此User模型。

# settings.py
settings.AUTH_USER_MODEL = '<user_app_name>/models.py'

您可以查阅django文档来详细阅读。

相关内容

  • 没有找到相关文章

最新更新