Django get_FOO_在列表中显示
我有一个模型技术,有一个CharField过程和选择 我有一个列表,其中有不同数量的选择:Django get_FOO_在列表中显示,django,Django,我有一个模型技术,有一个CharField过程和选择 我有一个列表,其中有不同数量的选择: procs = [['CS'],['C1','C2','ID'],['C1','C2','C3','C4'], ['ID'],['RP'],['GY']] (例如,“CS”是奶酪等) 我正在尝试获取一个输出,例如 [奶酪],2 ['Chips','Nuts',0 等 但是get_FOO_display()抛出了一个TypeError:unhabable类型:“list” 为什么会这样?有没有更好
procs = [['CS'],['C1','C2','ID'],['C1','C2','C3','C4'],
['ID'],['RP'],['GY']]
(例如,“CS”是奶酪等)
我正在尝试获取一个输出,例如
[奶酪],2
['Chips','Nuts',0
等
但是get_FOO_display()抛出了一个TypeError:unhabable类型:“list”
为什么会这样?有没有更好的方法获得相同的输出
谢谢问题在于
proc
是一个列表,procedure
字段需要一个字符串
您需要提取第一个元素,以获取字符串,然后可以分配它
另外,您正在使用k
对proc
进行迭代,但随后您正在重新分配它。这没有道理。也许你想要那样的东西
for k in proc:
technique = Technique(procedure=k)
m.append(str(technique.get_procedure_display()))
您可以使用聚合功能来简化它-什么是
total
?谢谢。对不起,这是以前的过滤器。我已经编辑过了,现在可以看了,谢谢,已经修好了
for k in proc:
technique = Technique(procedure=k)
m.append(str(technique.get_procedure_display()))