如何动态更新“初始”' Form ChoiceField中的值

时间:2015-01-23 17:17:51

标签: django django-forms

我有一个包含以下字段的表单:

image_choices = [] 
images = forms.ChoiceField(label=_("Images"), choices=image_choices, initial="")

我需要能够更新' initial'的值。属性,在我了解该值应该是什么之后。 目前,我已在__init__

内完成此任务
def __init__(self, request, image_choices=image_choices,
             flavor_choices=flavor_choices, args, *kwargs): 
    super(UpdateWorkload, self).__init__(request, args, *kwargs) 
    selected_image = selected_workload['image'] 
    self.fields['images'].initial = selected_image

我没有收到任何错误,打印时,价值就在那里,  但是,在屏幕上的实际形式中, 根据{{​​1}}

,我仍然会获取默认列表,并且未选择任何特定项目

我该如何解决?

1 个答案:

答案 0 :(得分:4)

毕竟,使用这种方法:

self.fields['images'].initial = selected_image
self.fields['flavors'].initial = selected_flavor

正在运作。我唯一不同的做法是将我的后端从django restframework改为tastypie