2
2つのモデルと1対1の関係があります。 ItemData
からItem
までの列(たとえばitem = Item(); item.value
)にアクセスしたいとします。私は__getattr__
を上書きしようとしましたが、この方法はSQLAlachemyベースモデルで集中的に使用されています。どんな助けもありがたい。SQLAlchemy - 親モデルを介して子モデルの列にアクセスする(一対一の関係)
class Item(Model):
__tablename__ = "item_data"
id = Column(Integer, primary_key=True)
data = relationship("ItemData", back_populates="_item", uselist=False,
foreign_keys="ItemData._item_id")
class ItemData(Model):
__tablename__ = "items_data"
id = Column(Integer, primary_key=True)
_item_id = Column(Integer, ForeignKey("items.id"))
_item = relationship("Item", back_populates="data",
foreign_keys=[_item_id])
value = Column(Integer)