Trong một số hướng dẫn sqlalchemy, relation
chức năng được sử dụng để xác định các mối quan hệ sql. như thế này:Sqlalchemy, mối quan hệ và mối quan hệ
class Movie(DeclarativeBase):
__tablename__ = "movies"
movie_id = Column(Integer, primary_key=True)
title = Column(String(100), nullable=False)
description = Column(Text, nullable=True)
genre_id = Column(Integer, ForeignKey('genres.genre_id'))
genre = relation('Genre', backref='movies')
release_date = Column(Date, nullable=True)
class Director(DeclarativeBase):
__tablename__ = "directors"
director_id = Column(Integer, primary_key=True)
title = Column(String(100), nullable=False)
movies = relation(Movie, secondary=movie_directors_table, backref="directors")
Nhưng một số điều đưa ra relationship
chức năng, tức là:
class Address(Base):
__tablename__ = 'addresses'
id = Column(Integer, primary_key=True)
email_address = Column(String, nullable=False)
user_id = Column(Integer, ForeignKey('users.id'))
user = relationship("User", backref=backref('addresses', order_by=id))
Câu hỏi của tôi là: sự khác biệt giữa hai chức năng là gì, và ít nhất một lý do để sử dụng mỗi một.
Cảm ơn là trước