diff options
author | Christian Pointner <equinox@helsinki.at> | 2017-01-06 01:07:50 (GMT) |
---|---|---|
committer | Christian Pointner <equinox@helsinki.at> | 2017-01-06 01:07:50 (GMT) |
commit | 11ff3ea58c83f82e4d9d7b58f4f57a8718a2f8a2 (patch) | |
tree | da2489f49c956f5d618f551369f2027a7228f6e3 | |
parent | bee4dba4ed6c8519a9a87027d20d3c3f284ec7fa (diff) |
added support for new noplaying db format
-rw-r--r-- | nop/migrations/0001_initial.py | 5 | ||||
-rw-r--r-- | nop/models.py | 15 |
2 files changed, 16 insertions, 4 deletions
diff --git a/nop/migrations/0001_initial.py b/nop/migrations/0001_initial.py index 67a04e8..0285517 100644 --- a/nop/migrations/0001_initial.py +++ b/nop/migrations/0001_initial.py @@ -2,6 +2,7 @@ from __future__ import unicode_literals from django.db import migrations, models +import nop.models class Migration(migrations.Migration): @@ -22,7 +23,7 @@ class Migration(migrations.Migration): ('title', models.CharField(max_length=765, blank=True)), ('artist', models.CharField(max_length=765, blank=True)), ('album', models.CharField(max_length=765, blank=True)), - ('ismusic', models.IntegerField(null=True, blank=True)), + ('carttype', nop.models.CartTypeField(max_length=64, blank=True)), ], options={ 'ordering': ['-timestamp'], @@ -39,7 +40,7 @@ class Migration(migrations.Migration): ('title', models.CharField(max_length=765, blank=True)), ('artist', models.CharField(max_length=765, blank=True)), ('album', models.CharField(max_length=765, blank=True)), - ('ismusic', models.IntegerField(null=True, blank=True)), + ('carttype', nop.models.CartTypeField(max_length=64, blank=True)), ], options={ 'ordering': ['-timestamp'], diff --git a/nop/models.py b/nop/models.py index 1b39eed..e9b23e6 100644 --- a/nop/models.py +++ b/nop/models.py @@ -1,5 +1,16 @@ from django.db import models +class CartTypeField(models.Field): + def __init__(self, *args, **kwargs): + self.types = [('show', 'Show'), + ('pool', 'Musicpool'), + ('jingle', 'Jingle'), + ] + super(CartTypeField, self).__init__(*args, **kwargs) + + def db_type(self, connection): + return "ENUM({})".format(','.join("'{}'".format(col) + for col, _ in self.types)) class Master(models.Model): timestamp = models.BigIntegerField(primary_key=True) @@ -9,7 +20,7 @@ class Master(models.Model): title = models.CharField(max_length=765, blank=True) artist = models.CharField(max_length=765, blank=True) album = models.CharField(max_length=765, blank=True) - ismusic = models.IntegerField(null=True, blank=True) + carttype = CartTypeField(max_length=64, blank=True) class Meta: db_table = u'master' @@ -24,7 +35,7 @@ class Standby(models.Model): title = models.CharField(max_length=765, blank=True) artist = models.CharField(max_length=765, blank=True) album = models.CharField(max_length=765, blank=True) - ismusic = models.IntegerField(null=True, blank=True) + carttype = CartTypeField(max_length=64, blank=True) class Meta: db_table = u'standby' |