0

我有两个模型(我正在使用 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)
  ...

如何检查 aUser与 a的保存是否customer_idpartner_idthe的partner_id对应?是否有任何关系配置禁止这样做?我试过了 :Customercustomer_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 回答