我希望我的模型的主键是自增整数。这是我的模型的样子。
class Region(db.Model):
__tablename__ = 'regions'
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
name = db.Column(db.String(100))
parent_id = db.Column(db.Integer, db.ForeignKey('regions.id'))
parent = db.relationship('Region', remote_side=id, primaryjoin=('Region.parent_id==Region.id'), backref='sub-regions')
created_at = db.Column(db.DateTime, default=db.func.now())
deleted_at = db.Column(db.DateTime)
上述代码创建了我的表格,但没有使id
自动递增。因此,如果在我的插入查询中缺少id
字段,它将给出以下错误消息:
ERROR: null value in column "id" violates not-null constraint
因此,我将id
声明更改为以下形式:
id = db.Column(db.Integer, db.Sequence('seq_reg_id', start=1, increment=1),
primary_key=True)
依然是同样的错误。以上代码有什么问题?
INSERT INTO regions(name, ) ...
。 - lovesh