Skip to content

Instantly share code, notes, and snippets.

@artschwagerb
Last active August 29, 2015 14:14
Show Gist options
  • Save artschwagerb/8efa45d6eefe6697ef07 to your computer and use it in GitHub Desktop.
Save artschwagerb/8efa45d6eefe6697ef07 to your computer and use it in GitHub Desktop.
Django Revision?
#import reversion
from django.db import models
from django.contrib.auth.models import User
class RevisionManager(models.Manager):
def get_queryset(self):
return super(RevisionManager, self).get_queryset().latest()
class Ticket_Status(models.Model):
user = models.ForeignKey(User,null=True,blank=True)
STATUS_CHOICES = (
('OPEN', 'Open'),
('SOLVED', 'Solved'),
('CLOSED', 'Closed'),
('WAITING_FOR_VENDOR', 'Waiting For Vendor'),
)
status = models.CharField(max_length=25,
choices=STATUS_CHOICES,
default='OPEN')
date_added = models.DateTimeField('date_added',auto_now_add=True, editable=False)
objects = RevisionManager()
def __unicode__(self):
return u'%s' % (self.name)
class Meta:
verbose_name_plural = "statuses"
ordering = ['date_added']
class Ticket(models.Model):
tech = models.ForeignKey(User,null=True,blank=True)
techs_watching = models.ManyToManyField(User,related_name='techs_watching',null=True,blank=True)
user = models.ForeignKey(User)
problem = models.TextField(null=True,blank=True)
#...
status = models.ManyToManyField(Ticket_Status,related_name='status',null=True,blank=True)
#...
date_added = models.DateTimeField('date_added',auto_now_add=True, editable=False)
date_updated = models.DateTimeField('date_updated',auto_now_add=True, auto_now=True, editable=False)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment