django-model-utils/model_utils/tests/models.py

63 lines
1.6 KiB
Python
Raw Normal View History

from django.db import models
from django.utils.translation import ugettext_lazy as _
from model_utils.models import InheritanceCastModel, TimeStampedModel, StatusModel, TimeFramedModel
from model_utils.managers import QueryManager
2010-01-15 22:26:59 +00:00
from model_utils.fields import SplitField
from model_utils import Choices
class InheritParent(InheritanceCastModel):
pass
class InheritChild(InheritParent):
pass
class TimeStamp(TimeStampedModel):
pass
class TimeFrame(TimeFramedModel):
pass
class Status(StatusModel):
STATUS = Choices(
('active', _('active')),
('deleted', _('deleted')),
('on_hold', _('on hold')),
)
class Status2(StatusModel):
STATUS = (
('active', _('active')),
('deleted', _('deleted')),
('on_hold', _('on hold')),
)
class Post(models.Model):
published = models.BooleanField()
confirmed = models.BooleanField()
order = models.IntegerField()
objects = models.Manager()
public = QueryManager(published=True)
public_confirmed = QueryManager(models.Q(published=True) &
models.Q(confirmed=True))
public_reversed = QueryManager(published=True).order_by('-order')
class Meta:
ordering = ('order',)
2010-01-15 22:26:59 +00:00
class Article(models.Model):
title = models.CharField(max_length=50)
body = SplitField()
def __unicode__(self):
return self.title
class NoRendered(models.Model):
"""
Test that the no_excerpt_field keyword arg works. This arg should
never be used except by the South model-freezing.
"""
body = SplitField(no_excerpt_field=True)