peewee.IntegrityError公司:NOT NULL约束失败

2024-04-26 20:37:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图创建一个关系数据库,但是当构造函数被调用时,我得到以下错误peewee.IntegrityError: NOT NULL constraint failed language.content_id。我尝试了很多不同的方法来完成这项工作,但是在调用models.Language.create()时出现了一个问题。其他要插入到表中的调用工作正常。有什么办法我能解决这个问题吗?请帮忙。在

这是我的代码:

在模型.py在

class User(UserMixin, Model):
    username = CharField(unique=True)
    email = CharField(unique=True)
    password = CharField(max_length=100)
    joined_at = DateTimeField(default=datetime.datetime.now)
    is_admin = BooleanField(default=False)

    class Meta:
        database = DATABASE
        order_by = ('-joined_at',)

    def get_post(self):
        return Post.select().where(Post.user == self)


    @classmethod
    def create_user(cls, username, email, password, admin=False):
        try:
            cls.create(
                username=username,
                email=email,
                password=generate_password_hash(password),
                is_admin=admin)
        except IntegrityError:
            raise ValueError("User already exists")


class Post(Model):
    content = TextField()

    class Meta:
        database = DATABASE

class Category(Model):
    category = TextField()

    class Meta:
        database = DATABASE

class Language(Model):
    timestamp = DateTimeField(default=datetime.datetime.now)
    content = ForeignKeyField(rel_model=Post, related_name='contents')
    category = ForeignKeyField(rel_model=Category, related_name='topic')
    user = ForeignKeyField(
        rel_model=User,
        related_name='units'
    )
    language = TextField()

    class Meta:
        database = DATABASE

在应用程序副本在

^{pr2}$

Tags: datetimemodeladminemailcreateusernamepasswordcontent