139

list、または他の何かでこれに似た何かをすることは可能dictionaryですか?

data_dict = {
    'title' : 'awesome title',
    'body' : 'great body of text',
}

Model.objects.create(data_dict)

私がそれを拡張することができればさらに良いです:

Model.objects.create(data_dict, extra='hello', extra2='world')
4

3 に答える 3

263

titleおよびbodyがモデルのフィールドである場合、**演算子を使用して辞書にキーワード引数を指定できます

あなたのモデルが呼ばれると仮定しますMyModel

# create instance of model
m = MyModel(**data_dict)
# don't forget to save to database!
m.save()

2番目の質問については、辞書が最後の引数である必要があります。繰り返しますが、モデル内のフィールドである必要がありますextraextra2

m2 =MyModel(extra='hello', extra2='world', **data_dict)
m2.save()
于 2009-10-15T10:49:09.577 に答える
0

どのモデルDummyModelにも使用できますDummyModel.objects.create(**data_dict)。作成後に保存する必要はありません。

于 2021-08-11T21:33:15.550 に答える