我想将一个字段(名为“icon”)显示为单选按钮。
我创建了方法回调,以便使用JQuery显示DateTimeFields。下面的代码应该这样做,但是当我运行我的服务器时出现这个错误:
调用元类库时出错 make_custom_datefield()得到了一个意外的关键字参数'widget'
...
异常位置:fields_for_model,第164行中的Virtualenvs / django / local / lib / python2.7 / site-packages / django / forms / models.py
forms.py:
def make_custom_datefield(f):
formfield = f.formfield()
if isinstance(f, DateTimeField):
formfield.widget.format = '%m/%d/%Y'
formfield.widget.attrs.update({'class':'datetimePicker', 'readonly':'true'})
return formfield
class FlashForm(forms.ModelForm):
formfield_callback = make_custom_datefield
class Meta:
model = Flash
exclude=('user','marker','address')
widgets = {'icon': forms.RadioSelect(), }
你能帮助我吗,我真的不知道如何解决这个问题!
由于
答案 0 :(得分:3)
最终,我找到了答案:我不得不添加** kwargs参数。
def make_custom_datefield(f,**kwargs):
formfield = f.formfield(**kwargs)
if isinstance(f, DateTimeField):
formfield.widget.format = '%m/%d/%Y'
formfield.widget.attrs.update({'class':'datetimePicker', 'readonly':'true'})
return formfield