Django Model Field Default to Null

I need to have my Django application allow me to have a default value of NULL set for a certain model field. I've looked over the null, blank, and default parameters, but it's not very clear what combination of the three I need to use to get the desired effect. I've tried setting default=NULL but it threw an error. If I specify blank=True, null=True and no default, will it just default back to NULL come runtime?


Solution 1:

Try default=None. There is no NULL in python.

Solution 2:

If you specify null=True on the model field then the value will be stored as NULL in the database if the user does not provide a value.

Solution 3:

  • blank=True allows you to input nothing (i.e "", None) and keep it empty.
  • null=True means the database row is allowed to be NULL.
  • default=None sets the field to None if no other value is given.