2008-11-16 08:50:06 +00:00
|
|
|
# coding: utf-8
|
2006-05-02 01:31:56 +00:00
|
|
|
"""
|
2007-03-23 20:17:04 +00:00
|
|
|
32. Callable defaults
|
2006-05-02 01:31:56 +00:00
|
|
|
|
2006-05-31 19:23:07 +00:00
|
|
|
You can pass callable objects as the ``default`` parameter to a field. When
|
|
|
|
the object is created without an explicit value passed in, Django will call
|
|
|
|
the method to determine the default value.
|
|
|
|
|
|
|
|
This example uses ``datetime.datetime.now`` as the default for the ``pub_date``
|
|
|
|
field.
|
2006-05-02 01:31:56 +00:00
|
|
|
"""
|
|
|
|
|
|
|
|
from datetime import datetime
|
|
|
|
|
2011-10-13 18:04:12 +00:00
|
|
|
from django.db import models
|
2012-08-12 10:32:08 +00:00
|
|
|
from django.utils.encoding import python_2_unicode_compatible
|
2011-10-13 18:04:12 +00:00
|
|
|
|
|
|
|
|
2012-08-12 10:32:08 +00:00
|
|
|
@python_2_unicode_compatible
|
2006-05-02 01:31:56 +00:00
|
|
|
class Article(models.Model):
|
2007-08-05 05:14:46 +00:00
|
|
|
headline = models.CharField(max_length=100, default='Default headline')
|
2006-05-31 19:23:07 +00:00
|
|
|
pub_date = models.DateTimeField(default=datetime.now)
|
|
|
|
|
2012-08-12 10:32:08 +00:00
|
|
|
def __str__(self):
|
2006-05-02 01:31:56 +00:00
|
|
|
return self.headline
|