0

2 つのモデルがあります (MySQL を使用しています)。

class Customer(Base):
    __tablename__ = 'customer'
   ...
   partner_id =Column(Integer, ForeignKey('partner.id'), nullable=False) 
   ...

class User(Base):
  ...
  customer_id = Column(Integer, ForeignKey('customer.id'), nullable=False)
  partner_id = Column(Integer, ForeignKey('partner.id'), nullable=False)
  ...

を で保存しているときに、 が で の保存に対応しているUserことcustomer_idを確認するにはどうすればよいですか? それを禁止する関係構成はありますか?私は試した :partner_idpartner_idCustomercustomer_id

ForeignKeyConstraint(['partner_id'], ['customer.partner_id'])

ユーザーモデルでですが、それ以外の方法で試しても止まりません!

4

2 に答える 2

0

多分私はあなたの要点をつかんだと思います。

次のようなコードを使用して、検証または制約を行うことができます。

user = user_to_save()
customer = session.query(Customer).filter(Customer.id = user.customer_id).one()
if customer.partner_id == user.partner_id:
    save_user()
else:
    do_something()
于 2013-10-12T11:14:47.250 に答える
0

私はこれで何かを求めていました。edsioufiのおかげで

Flask Python モデルの検証

于 2013-10-15T05:07:54.353 に答える