Added Show model
This commit is contained in:
parent
1b3bed584b
commit
4803987bbb
@ -1,3 +1,60 @@
|
||||
from django.db import models
|
||||
from django.core.files.storage import FileSystemStorage
|
||||
from django.conf import settings
|
||||
import os
|
||||
|
||||
def name_artwork(inst, name):
|
||||
return '%s/artwork.%s'%(inst.abbr,name.split('.')[-1])
|
||||
def name_css(inst, name):
|
||||
return '%s/style.css'%inst.abbr
|
||||
def name_banner(inst, name):
|
||||
return '%s/banner.%s'%(inst.abbr,name.split('.')[-1])
|
||||
|
||||
# Create your models here.
|
||||
class Show(models.Model):
|
||||
show_static_storage = FileSystemStorage(location=os.path.join(os.path.dirname(settings.MEDIA_ROOT), 'uploaded_resources'), base_url='showstatic')
|
||||
name = models.CharField(
|
||||
max_length=40,
|
||||
help_text="The full name of the show",
|
||||
verbose_name="Full Name"
|
||||
)
|
||||
abbr = models.SlugField(
|
||||
max_length=5,
|
||||
unique=True,
|
||||
help_text="A short abbreviation of the show, for use in urls",
|
||||
verbose_name="Abbreviation"
|
||||
)
|
||||
description = models.TextField(
|
||||
help_text="A description of the show",
|
||||
verbose_name="Description"
|
||||
)
|
||||
release = models.DateField(
|
||||
help_text="The release date of the first episode of the show",
|
||||
verbose_name="Release Date"
|
||||
)
|
||||
artwork = models.ImageField(
|
||||
storage=show_static_storage,
|
||||
upload_to = name_artwork,
|
||||
help_text="The artwork associated with the show. Should display the name of the show in a movie-poster esque format. Aspect ration should be about 2:3",
|
||||
verbose_name="Artwork"
|
||||
)
|
||||
imdb = models.URLField(
|
||||
help_text="The url of the IMDb page for this show",
|
||||
verbose_name="IMDb Page"
|
||||
)
|
||||
moderated = models.BooleanField(
|
||||
help_text="Wheter or not this show is user-moderated",
|
||||
verbose_name="User Moderated"
|
||||
)
|
||||
css = models.FileField(
|
||||
storage=show_static_storage,
|
||||
upload_to=name_css,
|
||||
help_text="The CSS stylesheet applied to this show's page",
|
||||
verbose_name="Custom Style"
|
||||
)
|
||||
banner = models.ImageField(
|
||||
storage=show_static_storage,
|
||||
upload_to = name_banner,
|
||||
help_text="A banner used for the show's page.",
|
||||
verbose_name="Artwork"
|
||||
)
|
||||
|
2
requirements.txt
Normal file
2
requirements.txt
Normal file
@ -0,0 +1,2 @@
|
||||
Django==1.11.4
|
||||
Pillow=4.2.1
|
Reference in New Issue
Block a user