将实例作为外键引用的参数传递

时间:2018-03-29 17:17:02

标签: peewee

当我将模型的实例传递给查询以用作fk ref时,我已经看到了一些语法,其中实例本身是合适的,但在我的repro中它失败了。

例如:

model_a = ModelA(name='bar')
model_a.save()
Model_b.get_or_create(name='foo', model_a_id=model_a)
# versus
Model_b.get_or_create(name='foo', model_a_id=model_a.get_id())

哪种基本模型功能启用了第一种语法?

我正在使用peewee v2.7.4。

1 个答案:

答案 0 :(得分:0)

您是否尝试过将模型实例分配给外键名称?

Model_b.get_or_create(name='foo', model_a=model_a)

如果你拥有的只是model_a的整数ID,那么上面也应该有效。