尝试将字典发布到我的视图中

时间:2018-01-04 10:46:21

标签: django

在我的模板中,我有一个表单,<select>有很多<option>。 我必须在每个<option>中传递2个值,所以我想创建一个字典:

<option value="{'Game':{{game.on_game.id}},'Platforme':{{game.on_plateform.id}}}">

它返回如下内容:

<option value="{'Game':3,'Platforme':3}">

在我看来,我想保存一个新条目:

post = request.POST    
entry = InboxRecruiting()
entry.on_game = Games.objects.get(id=post['game']['Game'])
entry.on_platforme = Plateform.objects.get(id=post['game']['Platforme'])
entry.save

我有一个错误:string indices must be integers

感谢您的帮助。

2 个答案:

答案 0 :(得分:2)

value属性的内容应该是一个字符串。在发出POST请求时,应将选定选项上的此字符串传递给后端。

如果您确定该值必须是json字符串,则使用json.loads函数将json字符串转换为python dict对象。

select_val = json.loads(request.POST['select-name'])
print select_val['Game']

请注意,您必须将值字符串更改为<option value='{"Game":3,"Platforme":3}'>

答案 1 :(得分:0)

您可以使用import ast ast.literal_eval(request.POST['select-name'])['Game']

[[NSString stringWithFormat:@"<sip:%s@%s:%s;transport=%s>", number, server, port, transport] UTF8String];