class Meta: model = Post fields = ('title','text','title2','fixed_date','compleat_date', 'must_worker',) widgets = { 'fixed_date': datetimepicker.DateTimePickerInput( format='%Y-%m-%d %H:%M:%S', options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', } ), 'compleat_date': datetimepicker.DateTimePickerInput( format='%Y-%m-%d %H:%M:%S', options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', } ), #ここ作成途中ブートストラップを入れ込みたい #'must_worker': bootstrapDualListbox(), } labels = { 'title': 'Todoタイトル', 'text': 'Todo詳細', 'title2': '記入者', 'fixed_date': '期日', 'compleat_date': '完了日', 'must_worker': '対象者', } exclude = ('SyainTable',)
class CalendarForm(forms.Form): title = forms.CharField( initial='', label='タイトル', required = False, # 必須ではない ) authorName = forms.CharField( initial='', label='作者', required=False, # 必須ではない ) material = forms.CharField( initial='', label='画材', required=False, # 必須ではない ) start_date = forms.DateField( initial='', label='開始日時', required=False, # 必須ではない widget=datetimepicker.DateTimePickerInput( format='%Y/%m/%d', # attrs={'readonly': 'true'}, # テキストボックス直接入力不可 # attrs={'class': 'form-control'}, options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', 'ignoreReadonly': True, 'allowInputToggle': True, # 'minDate': '', # 最小日時(データ取得開始日) # 'defaultDate': '2018/10/22', # 初期表示 } ).start_of('term'), ) end_date = forms.DateField( label='終了日時', initial='', # 初期値 required=False, # 必須ではない widget=datetimepicker.DateTimePickerInput( format='%Y/%m/%d', # attrs={'readonly': 'true'}, # テキストボックス直接入力不可 options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', 'ignoreReadonly': True, 'allowInputToggle': True, 'maxDate': (dt.now() + timedelta(days = 1)).strftime('%Y/%m/%d'), # 最大日時(翌日) } ).end_of('term'), )
class Meta: model = Task fields = ('state','task', 'deadline', ) widgets = { 'state': forms.RadioSelect( # attrs={ # "class":"form-check-input", # } ), 'task': forms.TextInput( attrs={ 'placeholder':'課題を終わらせる', 'class':"form-control", } ), # 'deadline': forms.DateTimeInput( # attrs={ # 'placeholder':'2020-05-26 17:45', # 'class':"form-control" # }, # ), 'deadline': datetimepicker.DateTimePickerInput( format='%Y-%m-%d %H:%M:%S', options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', } ) }
class TaskForm(forms.Form): # Reformats the html input to work with the django datetime field attempt = [ '%Y-%m-%d %H:%M:%S', # '2006-10-25 14:30:59' '%Y-%m-%d %H:%M', # '2006-10-25 14:30' '%Y-%m-%d', # '2006-10-25' '%m/%d/%Y %H:%M:%S', # '10/25/2006 14:30:59' '%m/%d/%Y %H:%M', # '10/25/2006 14:30' '%m/%d/%Y', # '10/25/2006' '%m/%d/%y %H:%M:%S', # '10/25/06 14:30:59' '%m/%d/%y %H:%M', # '10/25/06 14:30' '%m/%d/%y', '%Y-%m-%dT%H:%M' ] # '10/25/06' task_name = forms.CharField(label='Task Name', max_length=100, required=False) task_desc = forms.CharField(label='Task Description', max_length=200, required=False) end_time = forms.DateTimeField( label='End Time', input_formats=attempt, widget=bootstrap_datepicker_plus.DateTimePickerInput( format=attempt[1]), required=False) hours = forms.IntegerField(label='Estimated Length (Hours)', required=False) minutes = forms.IntegerField(label='Estimated Length (Minutes)', required=False) category = forms.Select(choices=Task.CATEGORIES)
class Meta: model = Task fields = '__all__' #read_only_fields = ('created', 'updated') exclude = ( 'created', 'updated', ) ### プルダウン形式 ''' widgets = { 'duedate': forms.SelectDateWidget } ''' ### カレンダー形式 widgets = { 'duedate': datetimepicker.DateTimePickerInput(format='%Y-%m-%d %H:%M:%S', options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', }), }
class Meta: model = BookingModel fields = ['start_day', 'start_time', 'end_day', 'end_time'] widgets = { 'user_id': forms.TextInput(attrs={'class': 'form-control'}), 'car_id': forms.TextInput(attrs={'class': 'form-control'}), 'start_day': datetimepicker.DatePickerInput(format='%Y-%m-%d', options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', }).start_of('期間'), 'start_time': datetimepicker.DateTimePickerInput(format='%H:%M', options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', }), 'end_day': datetimepicker.DatePickerInput(format='%Y-%m-%d', options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', }).end_of('期間'), 'end_time': datetimepicker.DateTimePickerInput(format='%H:%M', options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', }), } labels = { 'user_id': 'ユーザID', 'car_id': '車両ID', 'start_day': '開始日', 'start_time': '開始時刻', 'end_day': '終了日', 'end_time': '終了時刻', }
class Meta: model = Work fields = ('title', 'authorName', 'size', 'material', 'price', 'memo', 'create_datetime', 'author',) title = forms.CharField( initial='', label='タイトル', required=True, # 必須 max_length=255, ) authorName = forms.CharField( initial='', label='作者', required=True, # 必須 max_length=255, ) size = forms.CharField( initial='', label='サイズ', required=True, # 必須 max_length=255, ) material = forms.CharField( initial='', label='画材', required=True, # 必須 max_length=255, ) price = forms.CharField( initial='', label='価格', required=True, # 必須 max_length=255, ) memo = forms.CharField( initial='', label='メモ', required=False, # 必須ではない max_length=255, ) widgets = { 'create_datetime': datetimepicker.DateTimePickerInput( # format='%Y-%m-%d', format='%Y/%m/%d', attrs={'readonly': 'true'}, options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', 'ignoreReadonly': True, 'allowInputToggle': True, # 'maxDate': (dt.now() + timedelta(days=1)).strftime('%Y/%m/%d'), # 最大日時(翌日) # 'defaultDate': (dt.now() + timedelta(days = -1)).strftime('%Y/%m/%d %H:%M:%S'), # 初期値はmodelで定義した値が採用される } ), }
class Meta: model = Course fields = ( 'name', 'image', 'annotation', 'text', 'lectures_number', 'start', 'end', ) widgets = { 'name': forms.TextInput(attrs={'class': 'form-control'}), 'image': forms.ClearableFileInput(attrs={'class': 'form-control-file'}), 'annotation': forms.Textarea(attrs={'class': 'form-control'}), 'text': SummernoteWidget(attrs={'class': 'form-control'}), 'lectures_number': forms.NumberInput(attrs={'class': 'form-control'}), 'start': datepicker.DateTimePickerInput(format='%Y-%m-%d %H:%M'), 'end': datepicker.DateTimePickerInput(format='%Y-%m-%d %H:%M'), }
class Meta: model = Bosyu fields = ('bosyu_kbn', 'bosyu_limit', 'venue', 'venue_datetime', 'title', 'main_text', 'bosyu_people_cnt', 'bosyu_peple_kbn') widgets = { 'bosyu_limit': datetimepicker.DateTimePickerInput(format='%Y-%m-%d %H:%M', options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', }), 'venue_datetime': datetimepicker.DateTimePickerInput(format='%Y-%m-%d %H:%M', options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', }), }
class SampleForm(forms.Form): start_date = forms.DateField( label='開始日時', widget=datetimepicker.DateTimePickerInput( format='%Y/%m/%d %H:%M:%S', #attrs={'readonly': 'true'}, # テキストボックス直接入力不可 #attrs={'class': 'form-control'}, options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', 'ignoreReadonly': True, 'allowInputToggle': True, 'minDate': '2018/10/22', # 最小日時(データ取得開始日) 'defaultDate': '2018/10/22', # 初期表示 }).start_of('term'), ) end_date = forms.DateField( label='終了日時', initial=dt.now().strftime('%Y/%m/%d %H:%M:%S'), # 初期値 widget=datetimepicker.DateTimePickerInput( format='%Y/%m/%d %H:%M:%S', #attrs={'readonly': 'true'}, # テキストボックス直接入力不可 options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', 'ignoreReadonly': True, 'allowInputToggle': True, 'maxDate': (dt.now() + timedelta(days=1)).strftime('%Y/%m/%d %H:%M:%S'), # 最大日時(翌日) }).end_of('term'), )
class Meta: model = Post fields = ('title', 'start_at', 'comment', 'tags') widgets = { 'start_at': datetimepicker.DateTimePickerInput( format='%Y-%m-%d %H:%M:%S', attrs={'readonly': 'true'}, options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', 'ignoreReadonly': True, 'allowInputToggle': True, } ) }
class Meta: model = Greenhouse fields = ('data_datetime', ) widgets = { # スマホ対応版 キーボード入力不可 'data_datetime': datetimepicker.DateTimePickerInput(format='%Y-%m-%d %H:%M:%S', attrs={'readonly': 'true'}, options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', 'ignoreReadonly': True, 'allowInputToggle': True, }), }
class Meta: model = Post fields = ( 'title', 'content', 'deadline', 'when_remind', ) widgets = { 'deadline': datetimepicker.DateTimePickerInput(format='%Y-%m-%d %H:%M:%S', options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', 'ignoreReadonly': True, 'allowInputToggle': True, }) }
class Meta: model = MyModel fields = ['date_field', 'datetime_field'] widgets = { 'date_field': datetimepicker.DatePickerInput( format='%Y-%m-%d', options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', } ), 'datetime_field': datetimepicker.DateTimePickerInput( format='%Y-%m-%d %H:%M:%S', options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', } ), }
def __init__(self, *args, **kwargs): user = kwargs.pop('user') super(RecordDetailEditForm, self).__init__(*args, **kwargs) self.fields['user_record_title'].queryset = models.UserRecordTitle.objects.filter(user=user) self.fields['user_record_title'].widget.attrs = {'class':'form-control'} self.fields['user_record_elapsed_time'].widget = datetimepicker.TimePickerInput( format='%H:%M', attrs={'readonly': 'true'}, options={ 'locale': 'ja', 'ignoreReadonly': True, 'allowInputToggle': True, }) self.fields['user_record_time'].widget = datetimepicker.DateTimePickerInput( format='%Y-%m-%d %H:%M', attrs={'readonly': 'true'}, options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', 'ignoreReadonly': True, 'allowInputToggle': True, })
class MyModelFilter(django_filters.FilterSet): date_field = django_filters.DateFilter( widget=datetimepicker.DatePickerInput( format='%Y-%m-%d', options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', } ), ) datetime_field = django_filters.DateTimeFilter( widget=datetimepicker.DateTimePickerInput( format='%Y-%m-%d %H:%M:%S', options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', } ), ) class Meta: model = MyModel fields = ['date_field', 'datetime_field']
class Meta: model = Diary fields = ( 'title', 'schedule', 'restaurant', 'station', 'number', 'photo1', 'photo2', 'photo3', 'lat', 'lng', ) widgets = { 'schedule': datetimepicker.DateTimePickerInput(format='%Y-%m-%d %H:%M', options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', }), }
def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) # Form(カレンダー入力など) title = '' authorName = '' material = '' start = '' end = '' # sessionに値がある場合、その値をセットする。(ページングしてもform値が変わらないように) if 'form_value' in self.request.session: form_value = self.request.session['form_value'] title = form_value[0] authorName = form_value[1] material = form_value[2] start = form_value[3] end = form_value[4] default_data = { 'title': title, # タイトル 'authorName': authorName, # 作者名 'material': material, # 画材 'start_date': start, # 開始日時 'end_date': end } # 終了日時 calendar_form = CalendarForm(initial=default_data) calendar_form.fields[ "start_date"].widget = datetimepicker.DateTimePickerInput( format='%Y/%m/%d', # attrs={'readonly': 'true', 'class': 'form-control'}, # テキストボックス直接入力不可 # attrs={'class': 'form-control'}, options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', 'ignoreReadonly': True, 'allowInputToggle': True, 'minDate': '2019/1/1', # 最小日時(データ取得開始日) 'defaultDate': start, # 初期表示 }).start_of('term') calendar_form.fields[ "end_date"].widget = datetimepicker.DateTimePickerInput( format='%Y/%m/%d', # attrs={'readonly': 'true'}, # テキストボックス直接入力不可 options={ 'locale': 'ja', 'dayViewHeaderFormat': 'YYYY年 MMMM', 'ignoreReadonly': True, 'allowInputToggle': True, 'maxDate': (dt.now() + timedelta(days=1) ).strftime('%Y/%m/%d %H:%M:%S'), # 最大日時(翌日) 'defaultDate': end, # 初期表示 }).end_of('term') context['calendar_form'] = calendar_form # No Imageパス no_image = settings.MEDIA_URL + NO_IMAGE context['no_image'] = no_image return context