Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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(),         
      }
like image 459
G Gill Avatar asked Jan 03 '12 07:01

G Gill


2 Answers

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.

like image 107
oz123 Avatar answered Oct 17 '22 09:10

oz123


There was similar problem here

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

like image 33
szaman Avatar answered Oct 17 '22 10:10

szaman