![](/img/trans.png)
[英]Reusing; i.e., continuing in stream of a python data generator in a class
[英]NameError - FLASK SQLACHEMY - Reusing Database Models i.e. Columns
我正在嘗試重用數據庫表類/模型
我的模型如下restmodels.py
# attributes master - holds the main product attributes
class AttributesMst(db.Model):
__tablename__ = 'oc_attribute'
attribute_id = db.Column(db.INT, primary_key=True, autoincrement=True, nullable=False)
attribute_group_id = AttributesGroups.attribute_group_id
sort_order = db.Column(db.INT, nullable=False)
#Attribute Groups
class AttributesGroups(db.Model):
__tablename__ = 'oc_attribute_group'
attribute_group_id = db.Column(db.INT, primary_key=True, autoincrement=True, nullable=False)
sort_order = db.Column(db.INT, nullable=False)
# attribute descriptions and language
class AttributesDescrptn(db.Model):
__tablename__ = 'oc_attribute_description'
attribute_id = AttributesMst.attribute_id
language_id = db.Column(db.INT, primary_key=True, autoincrement=False, nullable=False)
name = db.Column(db.VARCHAR(64), nullable=False)
運行代碼時,我得到以下回溯。
Traceback (most recent call last):
File "/home/seroney/PycharmProjects/TestProject/Addresses/restmodels.py", line 108, in <module>
class AttributesMst(db.Model):
File "/home/seroney/PycharmProjects/TestProject/Addresses/restmodels.py", line 111, in AttributesMst
attribute_group_id = AttributesGroups.attribute_group_id
NameError: name 'AttributesGroups' is not defined
請注意,這些類在同一文件中。 問候。
我想要實現的是像在Play Framework上那樣重用表列。
引用后定義AttributesGroups
。 這就是為什么您得到NameError
。 但最后,我認為您正在嘗試創建外鍵。 (不過,如果有新的二手Play框架,我可能是錯的。)
要使用SQLAlchemy創建外鍵,請替換
attribute_group_id = AttributesGroups.attribute_group_id
同
attribute_group_id = db.Column(db.Integer, db.ForeignKey('oc_attribute_groups.attribute_group_id'))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.