diff --git a/doc/ref/models/fields.rst b/doc/ref/models/fields.rst index 7a196f3a42..1479c8a954 100644 --- a/doc/ref/models/fields.rst +++ b/doc/ref/models/fields.rst @@ -146,6 +146,11 @@ field*. Define how the field must be loaded: ``lazy`` or ``eager``. +Default value +============= + +See :ref:`default value ` + Field types =========== diff --git a/doc/topics/index.rst b/doc/topics/index.rst index 9831b71074..b318d98faa 100644 --- a/doc/topics/index.rst +++ b/doc/topics/index.rst @@ -11,6 +11,7 @@ Introduction to all the key parts of trytond: install models/index + models/fields_default_value domain pyson views/index diff --git a/doc/topics/models/fields_default_value.rst b/doc/topics/models/fields_default_value.rst new file mode 100644 index 0000000000..2c7505fdf8 --- /dev/null +++ b/doc/topics/models/fields_default_value.rst @@ -0,0 +1,34 @@ +.. _topics-fields_default_value: + +======================= +Default value of fields +======================= + +When a record is created, each field, which doesn't have a value specified, +is set with the default value if exists. + +The following method:: + + Model.default_() + +Return the default value for ``field name``. + +This example defines an ``Item`` model which has a default ``since``:: + + import datetime + + from trytond.model import ModelView, ModelSQL, fields + + class Item(ModelSQL, ModelView): + "Item" + _description = __doc__ + _name = "item.item" + since = fields.Date('since') + + def default_since(self): + return datetime.date.today() + + Item() + +See also method ``Model.default_get``: :attr:`~trytond.model.Model.default_get` +