Я абсолютный новичок в Flask и SQLAlchemy, и я застрял в том, что должно быть довольно простой проблемой.
Мое приложение содержит следующие две таблицы:
class Item(db.Model):
id = db.Column(UUIDType(), primary_key=True)
# more columns
class Person(db.Model)
id = db.Column(UUIDType(), primary_key=True)
# more columns
Ненужные столбцы были удалены для краткости.Мне необходимо добавить третий тип таблицы, Description
, который имеет ряд свойств.Item
и Person
могут опционально иметь описания.
Вот что я сделал:
class Description(db.Model):
id = db.Column(UUIDType(), primary_key=True)
text = db.Column(db.BLOB, nullable=False)
# some other properties
class Item(db.Model):
id = db.Column(UUIDType(), primary_key=True)
description_id = db.Column(UUIDType(), db.ForeignKey('tags.id'), nullable=True)
description = db.relationship('Description')
class Person(db.Model)
id = db.Column(UUIDType(), primary_key=True)
description_id = db.Column(UUIDType(), db.ForeignKey('tags.id'), nullable=True)
description = db.relationship('Description')
Я не уверен, что этоправильный способ решения проблемы, в частности, поскольку столбец description_id
имеет значение NULL, а отношение description
- нет.
Это правильно?И если так (сомнительно), есть ли лучший способ решить проблему?