From: Thomas Fillon Date: Thu, 27 Aug 2015 16:37:02 +0000 (+0200) Subject: Add new model to hold condition grading (to prepare data migration) X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=c04a1b2a90fbbd835b8a6fff1cbb9e4145c94010;p=diggersdigest.git Add new model to hold condition grading (to prepare data migration) --- diff --git a/diggersdigest/records/migrations/0003_auto_20150827_1634.py b/diggersdigest/records/migrations/0003_auto_20150827_1634.py new file mode 100644 index 0000000..b11b718 --- /dev/null +++ b/diggersdigest/records/migrations/0003_auto_20150827_1634.py @@ -0,0 +1,34 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import models, migrations +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('records', '0002_artist_country_label_podcast_record'), + ] + + operations = [ + migrations.CreateModel( + name='ConditionGrading', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('name', models.CharField(max_length=128, verbose_name='name')), + ('abbr', models.CharField(unique=True, max_length=5, verbose_name='abbreviation')), + ('description', models.TextField(verbose_name='description')), + ], + ), + migrations.AlterField( + model_name='record', + name='cover_state', + field=models.ForeignKey(related_name='records_cover_condition', on_delete=django.db.models.deletion.SET_NULL, verbose_name='cover condition', to='records.ConditionGrading', null=True), + ), + migrations.AlterField( + model_name='record', + name='vinyl_state', + field=models.ForeignKey(related_name='records_vinyl_condition', on_delete=django.db.models.deletion.SET_NULL, verbose_name='vinyl condition', to='records.ConditionGrading', null=True), + ), + ] diff --git a/diggersdigest/records/models.py b/diggersdigest/records/models.py index d6065d6..f251cc3 100644 --- a/diggersdigest/records/models.py +++ b/diggersdigest/records/models.py @@ -174,6 +174,12 @@ class Country(models.Model): return self.name +class ConditionGrading(models.Model): + name = models.CharField(_('name'), max_length=128) + abbr = models.CharField(_('abbreviation'), max_length=5, unique=True) + description = models.TextField(_('description')) + + class Record(models.Model): """ Model for Record @@ -199,8 +205,8 @@ class Record(models.Model): label = models.ForeignKey(Label, verbose_name=_('label'), related_name='records', null=True, on_delete=models.SET_NULL) release_date = models.DateField(_('release date'), null=True) country = models.ForeignKey(Country, verbose_name=_('country'), related_name='records', null=True, on_delete=models.SET_NULL) - cover_state = models.ForeignKey(Grading, verbose_name=_('cover state'), related_name='records_cover_states', null=True, on_delete=models.SET_NULL) - vinyl_state = models.ForeignKey(Grading, verbose_name=_('vinyl state'), related_name='records_vinyl_states', null=True, on_delete=models.SET_NULL) + cover_state = models.ForeignKey(ConditionGrading, verbose_name=_('cover condition'), related_name='records_cover_condition', null=True, on_delete=models.SET_NULL) + vinyl_state = models.ForeignKey(ConditionGrading, verbose_name=_('vinyl condition'), related_name='records_vinyl_condition', null=True, on_delete=models.SET_NULL) audio_file = FileField(_("audio file"), max_length=1024, format="audio", upload_to=upload_to("records.Record.audio", "audio/records"), null=True)