G Gill
G Gill

Reputation: 1115

How to set default date in SelectDateWidget in django

I am using SelectDateWidget widget for entering date in the form field. But I want it to show the current date by default. How can I do that?

model.py

bdate = models.DateField(default=datetime.date.today())

This is giving error. can anyone tell the correct way to do that?

Also, my in template

{{ form.bdate }}

when I use the above mentioned line in my template it displays like this -- -- -- but I want something like this month date year. how can i do this?

My form is:

widgets = {
      'bdate' : SelectDateWidget(),         
      }

Upvotes: 8

Views: 5572

Answers (2)

szaman
szaman

Reputation: 6756

There was similar problem here

Try to use default=datetime.date.today or auto_now_add=True

Upvotes: 1

oz123
oz123

Reputation: 28878

Using Django 1.3 the following worked for me:

join_date = forms.DateField(widget=SelectDateWidget(), label='Joining Date', initial=timezone.now())

The keyword is initial not default.

Upvotes: 8

Related Questions