Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
493 views
in Technique[技术] by (71.8m points)

python - Django 1.11 - forms.Models: change default form widget for DateTimeField

I have a data field

missing_date = models.DateTimeField(null=True, blank=False)

The default django form widget is to use TextInput, and it is not displaying as Calendar Date/Time select as in the admin page.

Can you please advise how can I display the Calendar Date/Time like below: Calendar date/time Widget

It is really appreciated with your help.

Thanks Henry

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

Are you able to include any more of your code. i.e. Have you created a forms.py file? I presume you will be creating ModelForms?

If you have you can do something like this:

from django.forms import widget
Class DateInput(forms.DateInput):
    input_type = 'date'

Class Example(models.ModelForm):
    class Meta: #insert class Meta below
         model = #reference your model
         fields = () #include fields you want to display from your model
         widgets = {
               'missing_date': Date_Input()
         }

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...