我的DateTime模型中有一个字段,我正在寻找一种简单的方法,使其在表单中看起来不错.像这样的东西SelectDateWidget.
我一直在寻找很多类似的问题,看起来像管理日期选择器或jquery这样的东西似乎很棘手.(这是我第一次使用Django,之前从未使用过jquery).
所以,我使用的ChoiceField是这个例子,但是我无法让它工作.我得到错误名称'self'未定义.我可以不在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("")
Run Code Online (Sandbox Code Playgroud)