Я пытаюсь создать некоторые типы в Django, которые соответствуют стандартным типам Django. документация по полям пользовательской модели подходит для сложных случаев; Я просто хочу сохранить базовый тип Django из класса с помощью нескольких удобных методов.
Например, если бы я хранил игральные карты, я бы хотел что-то вроде:
class Card(object):
""" A playing card. """
def as_number(self):
""" returns a number from 1 (Ace of Clubs) and 52 (King of Spades)."""
return self.number + self.suit_rank() * 13
def __unicode(self): ...
def is_highest(self, other_cards, trump=None):...
def __init__(self, number, suit): ...
...
Я хочу, чтобы мои модели имели что-то вроде:
class my_game(models.Model):
ante = models.IntegerField()
bonus_card = Card() # Really stored as an models.IntegerField()
....
Я ожидаю, что ответ будет выглядеть как наследование от правильного типа, добавление некоторых специально названных полей get / store для карточки и переименование init () У кого-нибудь есть пример кода или лучшая документация?