저는 sqlalchemy (지금은 sqlite를 사용하고 있지만 나중에 변경 될 수 있습니다)를 사용하여 삽입 및 따라서 ROWID 순서가 중요한 데이터베이스를 작성합니다. 나는 Message
객체를 생성sqlalchemy는 다 대일/다 대 다 관계에서 순서를 유지합니까?
class Message(Base):
__tablename__ = 'messages'
__table_args__ = {'sqlite_autoincrement':True}
id = Column(Integer, primary_key=True)
refs = relationship('Ref')
class Ref(Base):
__tablename__ = 'refs'
__table_args__ = {'sqlite_autoincrement':True}
id = Column(Integer, primary_key=True)
message_id = Column(Integer, ForeignKey('messages.id'))
및 append
가 message.refs
에 Ref
객체, 나는 데이터베이스에이 커밋 할 때 Ref
의이 삽입됩니다 있는지 확인하고 싶습니다 : 나는 기본적으로 다음과 같은이 목록에 나타나는 순서와 동일합니다. sqlalchemy가 기본적으로이 작업을 수행합니까? 아니면 추가 할 때마다 플러시해야합니까?
오른쪽. My 5 ¢ : many-to-many의 경우, 주문 필드, 관계 및 연관 프록시를 사용하여 이러한 구현 세부 사항을 숨기는 중간 모델이 필요합니다. –
감사 밴, 그게 내가 뭘 원하는지 완벽하게 보이네요 :) – Asterism