Django:访问模型作为字典

Par*_*and 4 django django-models

我在python字典中有数据,我想存储在模型实例中.例如,我的字典可能看起来像

data = { 'date': '6/17/09', 'name': 'something', 'action': 'something' }
Run Code Online (Sandbox Code Playgroud)

我的模型可能看起来像:

class Something(models.Model):
    date = models.DateField()
    name = models.CharField()
    action = models.CharField()
Run Code Online (Sandbox Code Playgroud)

我正在寻找一种干净的方法来做这样的事情:

s = Something()
for k in data:
    s[k] = data[k]
Run Code Online (Sandbox Code Playgroud)

[更新]发布后不久,我意识到我可能只想使用带有'python'序列化程序的Django(de)序列化程序框架.艾曼的回答也很不错,让我想一想哪个会更好.

Aym*_*ieh 10

您可以使用参数解包:

data = {'date': '6/17/09', 'name': 'something', 'action': 'something'}
s = Something(**data)
Run Code Online (Sandbox Code Playgroud)

这相当于:

s = Something(date='6/17/09', name='something', action='something')
Run Code Online (Sandbox Code Playgroud)