首页 > 解决方案 > 不断收到此错误{relation "profiles_user" 不存在}

问题描述

我是一名初学者程序员,在我自己的 Django 项目上工作。我试图让模型在创建用户时自行创建。但我不断收到此错误{关系“profiles_user”不存在}。我使用 PostgreSQL 作为我的数据库。顺便说一句,当我尝试迁移数据时会发生此错误

from django.db import models
from django.contrib.auth.models import AbstractUser
from django.db.models.signals import post_save

class User(AbstractUser):
    is_expert = models.BooleanField(default=False)
    is_student = models.BooleanField(default=False)







EDUCATION=(
    ('Collage','Collage'),
    ('Post_Graduate','Post_Graduate'),
    ('Masters','Masters'),
    ('PHD','PHD'),
)


class Expert(models.Model):
    expert = models.OneToOneField(User, on_delete=models.CASCADE, primary_key=True)
    first_name = models.CharField(max_length=12, null=True, default='')
    last_name = models.CharField(max_length=20, null=True)
    discription = models.TextField(null=True)
    education = models.CharField(max_length=200, choices=EDUCATION,  null=True)
    field = models.CharField(max_length=200, null=True)
    company = models.CharField(max_length=50,null=True)
    position = models.CharField(max_length=20, null=True)
    experience = models.TextField(null=True)
    charge_per_hour = models.IntegerField(default="0")

    def __str__(self):
        return (f'{self.first_name} {self.last_name}')



def create_profile(sender,**kwargs ):
    if kwargs['created']:
        user_profile=Expert.objects.create(expert=kwargs['instance'])


post_save.connect(create_profile,sender=User)

提前谢谢你的帮助

标签: pythondjangopostgresql

解决方案


我似乎需要专门迁移它自己的应用程序。

python manage.py makemigrations profiles
python manage.py migrate profiles

推荐阅读