ModelForm和自定义字段

时间:2013-03-06 20:28:35

标签: django django-forms

我正在使用添加了自定义CharField的模型表单。我的问题是,POST请求后访问自定义字段的标准方法是什么?这就是我现在这样做的方式:

#inside ModelForm 
date = CharField(label='date', widget=Select(choices=[
        ('', '---------'),
        ('N', 'Never')
    ]))

def __init__(self, *args, **kwargs):
   self.date = args[0]['date'] #custom date CharField
   return super(MyForm, self).__init__(*args, **kwargs)

def save(self, *args, **kwargs):
# processing self.date...

有没有更好的方法呢?此外,日期字段使用选项作为输入数据的来源。我猜是在这个特定实例中选择是正确的,构建表和模型,然后使用queryset来检索一些值将无济于事,我猜

1 个答案:

答案 0 :(得分:0)

使用:

def __init__(self, *args, **kwargs):
    super(MyForm, self).__init__(*args, **kwargs)
    date = self.fields['date']

如果选项的值需要可编辑,我会将它们放在一个单独的模型中并使用ModelChoiceField。否则,你只需使用静态选择。