文章内容
2019/11/17 17:42:31,作 者: 黄兵
'dynamic' loaders cannot be used with many-to-one/one-to-one relationships and/or uselist=False
今天按照这篇文章:SQLAlchemy 一对一关系设置一对一的时候,出现了如下错误:
sqlalchemy.exc.InvalidRequestError: One or more mappers failed to initialize - can't proceed with initialization of other mappers. Triggering mapper: 'mapped class PrivateNumberStock->private_number_phone_number_stock'. Original exception was: On relationship PrivateNumberStock.service_build_phone_numbers, 'dynamic' loaders cannot be used with many-to-one/one-to-one relationships and/or uselist=False.
出现问题的原因:
在使用一对一的时候,lazy不能设置为dynamic。
具体错误代码如下:
service_build_phone_numbers = db.relationship('ServiceBuildPhoneNumber', backref='private_number_phone_number_stock', lazy='dynamic', uselist=False)
解决方案:
删除lazy='dynamic'
即可,如果设置成lazy='select'
,也是没有问题的。
黄兵个人博客原创。
评论列表