it/itf/emailer/models.py
2011-12-05 19:04:24 +05:30

59 lines
1.7 KiB
Python

from django.db import models
from app.models import ItfModel
class EmailerIssue(ItfModel):
title = models.CharField(max_length=512)
date = models.DateField()
issue_no = models.IntegerField()
published = models.BooleanField(default=False)
def __unicode__(self):
return self.title
class Meta:
ordering = ['-issue_no']
class EmailerArticle(models.Model):
issue = models.ForeignKey(EmailerIssue)
title = models.CharField(max_length=512)
subtitle = models.TextField(blank=True)
author = models.CharField(max_length=512, blank=True)
author_bio = models.TextField(blank=True)
main_image = models.ImageField(upload_to='upload/images/emailer/', blank=True)
text = models.TextField()
position = models.IntegerField(null=True)
def __unicode__(self):
return self.title
class ArticleImage(models.Model):
image = models.ImageField(upload_to='upload/images/emailer/')
caption = models.CharField(max_length=512, blank=True)
article = models.ForeignKey(EmailerArticle)
short_name = models.CharField(max_length=64, blank=True, help_text='Short name to insert images into article')
def __unicode__(self):
return self.caption
class Weblink(models.Model):
url = models.URLField()
title = models.CharField(max_length=512)
text = models.TextField(blank=True)
issue = models.ForeignKey(EmailerIssue)
def __unicode__(self):
return self.url
class BulletinBoardItem(models.Model):
issue = models.ForeignKey(EmailerIssue)
title = models.CharField(max_length=512)
text = models.TextField()
position = models.IntegerField(default=1)
def __unicode__(self):
return self.title