在模型中将动态字段设置为“初始”

时间:2011-05-26 04:53:13

标签: django

就像我们通常设置初始数据一样,因为我们知道该模型的字段是什么。

  

initial = {'fieldA':valueA,'fieldB':valueB}

我们如何设置未知和动态的字段? (即我们不知道字段是什么,因为字段将基于数据库)这是因为我的字段是动态的,不知道。 这是我的form.Form在def init

 for f in Parameter.objects.filter(id=idfield):          

            if Part.objects.get(parameter=f.parameter_name).isfunction:
                self.fields.update({
                            f.parameter_name : forms.CharField(widget=forms.TextInput() )})

如您所见,这些字段是基于idfield生成的。

例如 如果我们在数据库中只有2条记录,我只希望它显示为:

initial = {'a':'a', 'b' : 'b'}

如果我们同样有3条记录,

initial = {'a':'a', 'b' : 'b', 'c' :'c'}

我想过做一个for循环,但冒号似乎是障碍因为它会显示为一个字符串。似乎无法为此找到解决方法。 感谢任何建议。

1 个答案:

答案 0 :(得分:0)

f.parameter_name : forms.CharField(widget=forms.TextInput(), initial=u'My cool initial value')