Untitled

mail@pastecode.io avatarunknown
plain_text
a month ago
1.4 kB
12
Indexable
Never
from django.db import models

GENRE= (
    (-1, "not defined"),
    (0, "rock"),
    (1, "metal"),
    (2, "pop"),
    (3, "hip-hop"),
    (4, "electronic"),
    (5, "reggae"),
    (6, "other"),
)


class Category(models.Model):
    name = models.CharField(max_length=64)
    description = models.TextField(null=True)


ARTICLE_STATUSES = (
    (0, "in progress"),
    (1, "waiting for approval"),
    (2, "published"),
)


class Article(models.Model):
    title = models.CharField(max_length=128)
    author = models.CharField(max_length=64, null=True)
    content = models.TextField()
    date_added = models.DateTimeField(auto_now_add=True)
    status = models.IntegerField(choices=ARTICLE_STATUSES)
    published_date_start = models.DateTimeField(null=True)
    published_date_end = models.DateTimeField(null=True)


ALBUM_RATE = (
    (0, "0"),
    (1, "1"),
    (2, "2"),
    (3, "3"),
    (4, "4"),
    (5, "5"),
)

class Band(models.Model):
    name = models.CharField(max_length=64)
    year = models.IntegerField(null=True)
    still_active = models.BooleanField(default=True)
    genre = models.IntegerField(choices=GENRE, default=-1)


class Album(models.Model):
    title = models.CharField(max_length=128)
    year = models.IntegerField()
    rate = models.IntegerField(choices=ALBUM_RATE)
    band = models.ForeignKey(Band, on_delete=models.CASCADE, null=True)