Передача экземпляра в качестве параметра для ссылки на внешний ключ

Когда я передаю экземпляр модели в запрос для использования в качестве fk ref, я видел некоторый синтаксис, в котором сам экземпляр подходит, но в моем воспроизведении он терпит неудачу.

например:

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 ответ

Вы пытались просто присвоить экземпляру модели имя внешнего ключа?

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

Если все, что у вас есть, это целочисленный идентификатор для model_a, вышеприведенное также должно работать.

Другие вопросы по тегам