我在我的模型中有一个DateTime
字段,我正在寻找一种简单的方法使它在表单中看起来不错。类似SelectDateWidget
。Django DateTimeField输入形式
我一直在寻找很多类似的问题,看起来非常棘手,让管理员datepicker或jquery的工作。 (这是我第一次使用Django,并且从未使用过jquery)。
因此,我使用ChoiceField
而不是从this的例子,但我无法让它工作。我得到错误名称'自我'未定义。我在这里不能使用self
吗?还是有一些更好的简单的方式来做到这一点?我不需要花哨的日期选择器,只是让输入变得容易。
class ProjectForm(ModelForm):
startdate = forms.DateField()
starthour = forms.ChoiceField(choices=((6,"6am"),(7,"7am"),(8,"8am"),(9,"9am"), ...))
startminute = forms.ChoiceField(choices=((0,":00"),(15,":15"),(30,":30"),(45,":45")))
class Meta:
model = Project
def clean(self):
starttime = time(int(self.cleaned_data.get('starthour')),
int(self.cleaned_data.get('startminute')))
return self.cleaned_data
try:
self.instance.start_time = datetime.datetime.combine(
self.cleaned_data.get("startdate"), starttime)
except TypeError:
raise forms.ValidationError("")
Youy'try'块应该在'clean'功能下。 – Ahsan 2013-03-08 10:43:18