Я хочу создать сопоставленный атрибут объекта, который заполняется из другой таблицы.
Используя пример документации SQLAlchemy, я хочу, чтобы поле user_name существовало в классе Address, чтобы его можно было легко запрашивать и легко получать к нему доступ (без повторного обращения к базе данных)
Например, я хочу чтобы иметь возможность запрашивать и фильтровать по user_name
Address.query.filter(Address.user_name == 'wcdolphin').first()
А также получить доступ к атрибуту user_name
всех объектов Address без потери производительности, и он должен правильно сохранять записи, как и ожидалось бы от атрибута в __tablename__
class User(Base):
__tablename__ = 'users'
id = Column(Integer, primary_key=True)
name = Column(String(50))
addresses = relation("Address", backref="user")
class Address(Base):
__tablename__ = 'addresses'
id = Column(Integer, primary_key=True)
email = Column(String(50))
user_name = Column(Integer, ForeignKey('users.name'))#This line is wrong
. Как мне это сделать?
Я обнаружил, что документацию относительно сложно понять, так как она не соответствует большинству примеров, особенно примерам Flask-SQLAlchemy.