Проксі моделі Django

Проксі моделі – це моделі, які не мають реального “відображення” в базі даних. Вони мають одну і ту ж таблицю в БД, як і модель, яку “проксіюємо”. Для чого це потрібно? Припустимо нам необхідно, щоб модель User мала сортування (order by) по-замовчуванню по email-у автора, і деякі додаткові функції. Ось так виглядатиме наша проксі модель

from django.contrib.auth.models import User

class MyUser(User):
    class Meta:
        proxy = True
        ordering = [ 'email']

    def do_something(self):
        ...

Використання:

>>> u = User.objects.create(username="foobar")
>>> MyUser.objects.get(username="foobar")
<MyUser: foobar>

http://docs.djangoproject.com/en/dev/topics/db/models/#proxy-models




coded by nessus