models.py 564 Bytes
Newer Older
1
"""
2
Using properties on models
3 4

Use properties on models just like on any other Python object.
5 6 7 8
"""

from django.db import models

9

10
class Person(models.Model):
11 12
    first_name = models.CharField(max_length=30)
    last_name = models.CharField(max_length=30)
13 14 15

    def _get_full_name(self):
        return "%s %s" % (self.first_name, self.last_name)
16 17 18 19

    def _set_full_name(self, combined_name):
        self.first_name, self.last_name = combined_name.split(' ', 1)

20 21
    full_name = property(_get_full_name)

22
    full_name_2 = property(_get_full_name, _set_full_name)