モデルにDateTime
フィールドがあり、フォームで見栄えを良くする簡単な方法を探しています。のようなものSelectDateWidget
。
私は同様の質問をたくさん見てきましたが、管理者の日付ピッカーやjqueryのようなものを機能させるのは本当に難しいようです. (Django を使用するのはこれが初めてで、jquery を使用したことはありません)。
したがって、このChoiceField
例の代わりにを使用していますが、動作させることもできません。エラー名'self' is not defined が表示されます。ここは使えないの?または、これを行うためのより簡単な方法はありますか?凝った日付ピッカーは必要ありません。ユーザーが簡単に入力できるようにするだけです。 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("")