¿Es posible agregar a una relación SQLAlchemy usando identificadores en lugar de objetos?SQLAlchemy: agregue una relación usando id en lugar de objeto?
Por ejemplo, considere dos clases SQLAlchemy declarativas, revisión y artista, con una relación entre ellos:
class Review(Base):
artist_id = Column(Integer, ForeignKey('artist.id'))
artist = relationship(Artist, backref=backref('reviews', order_by=id))
# etc.
class Artist(Base):
# etc.
Con una lista de revisión de ID para añadir a un artista, me parece que tenga que buscar el artista del ello, a continuación, agregar el objeto de artista para la revisión, así:
for review_id in review_ids:
review = session.query(Review).filter(Review.id==review_id).first()
artist.reviews.append(review)
estoy seguro de que sería más eficiente para omitir las operaciones de búsqueda y simplemente añadir iDS, pero ¿es esto posible?
Brillante, gracias. –