Я знаю, что при использовании MyModel.objects.create в Django можно передать словарь с ключами, которые соответствуют полям модели в MyModel. Это объясняется в другом вопросе здесь: Можно ли передать словарь моделям django при создании?
Однако я пытаюсь передать словарь, в котором ключей больше, чем полей модели — другими словами, некоторые ключи не используются при создании объекта. Возможно ли это сделать каким-то образом? Например:
data_dict = {
'key1': value1,
'key2': value2,
'key3': value3,
}
class MyModel(models.Model):
key1 = models.SomeField()
key2 = models.SomeField()
m = MyModel.objects.create(**data_dict)
Когда я пытаюсь это сделать, я получаю сообщение об ошибке, сообщающее мне, что "'key3' является недопустимым аргументом ключевого слова для этой функции". Я неправильно передаю словарь? Есть ли другой способ передать его модели, который означает, что модель не должна использовать все аргументы? Или мне просто нужно указать каждое поле вручную следующим образом:
m = MyModel.objects.create(
key1 = data_dict['key1'],
key2 = data_dict['key2'],
)