と:
class X(Base):
__tablename__ = 'x'
id = Column(Integer, primary_key=True)
ys = relationship("Y")
class Y(Base):
__tablename__ = 'y'
id = Column(Integer, primary_key=True)
data = Column(String, unique=True)
x_id = Column(Integer, ForeignKey('x.id'), nullable=False)
私が次のようなことをした場合:
# x is instance of X
x.ys #=> ["x"]
x.ys.extend(["x", "y", "z", "a"])
session.save()
anIntegrityError
が発生します (もちろん)。
(a)競合する問題の配列を取得する(新しいDBリクエストではなく、例外時に)、または(b)SQLAlchemyに続行するように指示する方法はありますか(例では、y, z, a
追加しましたか?
(はい、私はここと Postgres の下である種の「セット」のような動作をしようとしているので、これを達成する他の方法があれば、私も耳を傾けます。)