我在Django视图中有以下代码:
if form.is_valid():
image_filter_key_index = form.cleaned_data['image_filter_key']
image_filter_key_label = dict(form.fields['image_filter_key'].choices)[image_filter_key_index]
我试图通过Django模板上的select来提取与用户选择的键相关联的标签。选择词典如下:{1:'男',2:'女'}。
抛出的错误如下:KeyError:u' 1'。我究竟做错了什么?感谢。
答案 0 :(得分:1)
因为键是整数,但image_filter_key_index
是unicode char u'1'
。您需要先转换它然后尝试访问标签:
image_filter_key_label = dict(form.fields['image_filter_key'].choices)[int(image_filter_key_index)]