167 lines
8.2 KiB
Python
167 lines
8.2 KiB
Python
# Generated by Django 2.2.17 on 2021-10-23 18:12
|
|
|
|
from django.conf import settings
|
|
import django.core.validators
|
|
from django.db import migrations, models
|
|
import django.db.models.deletion
|
|
import media.fields
|
|
import media.validators
|
|
|
|
|
|
class Migration(migrations.Migration):
|
|
|
|
dependencies = [
|
|
('contenttypes', '0002_remove_content_type_name'),
|
|
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
|
('media', '0042_auto_20211023_1929'),
|
|
]
|
|
|
|
operations = [
|
|
migrations.CreateModel(
|
|
name='Borrowable',
|
|
fields=[
|
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
|
('isbn', media.fields.ISBNField(blank=True, help_text='You may be able to scan it from a bar code.', max_length=28, null=True, unique=True, validators=[media.validators.isbn_validator], verbose_name='ISBN')),
|
|
('title', models.CharField(max_length=255, verbose_name='title')),
|
|
('present', models.BooleanField(default=False, help_text='Tell that the medium is present in the Mediatek.', verbose_name='present')),
|
|
('polymorphic_ctype', models.ForeignKey(editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='polymorphic_media.borrowable_set+', to='contenttypes.ContentType')),
|
|
],
|
|
options={
|
|
'verbose_name': 'borrowable',
|
|
'verbose_name_plural': 'borrowables',
|
|
},
|
|
),
|
|
migrations.AlterModelOptions(
|
|
name='oldgame',
|
|
options={'ordering': ['title'], 'verbose_name': 'game', 'verbose_name_plural': 'games'},
|
|
),
|
|
migrations.AlterField(
|
|
model_name='emprunt',
|
|
name='media',
|
|
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='media.Borrowable'),
|
|
),
|
|
migrations.CreateModel(
|
|
name='Medium',
|
|
fields=[
|
|
('borrowable_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='media.Borrowable')),
|
|
('external_url', models.URLField(blank=True, verbose_name='external URL')),
|
|
('side_identifier', models.CharField(max_length=255, verbose_name='side identifier')),
|
|
('authors', models.ManyToManyField(to='media.Author', verbose_name='authors')),
|
|
],
|
|
options={
|
|
'verbose_name': 'medium',
|
|
'verbose_name_plural': 'media',
|
|
},
|
|
bases=('media.borrowable',),
|
|
),
|
|
migrations.CreateModel(
|
|
name='Review',
|
|
fields=[
|
|
('borrowable_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='media.Borrowable')),
|
|
('number', models.PositiveIntegerField(verbose_name='number')),
|
|
('year', models.PositiveIntegerField(blank=True, default=None, null=True, verbose_name='year')),
|
|
('month', models.PositiveIntegerField(blank=True, default=None, null=True, verbose_name='month')),
|
|
('day', models.PositiveIntegerField(blank=True, default=None, null=True, verbose_name='day')),
|
|
('double', models.BooleanField(default=False, verbose_name='double')),
|
|
],
|
|
options={
|
|
'verbose_name': 'review',
|
|
'verbose_name_plural': 'reviews',
|
|
'ordering': ['title', 'number'],
|
|
},
|
|
bases=('media.borrowable',),
|
|
),
|
|
migrations.CreateModel(
|
|
name='Book',
|
|
fields=[
|
|
('medium_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='media.Medium')),
|
|
('subtitle', models.CharField(blank=True, max_length=255, verbose_name='subtitle')),
|
|
('number_of_pages', models.PositiveIntegerField(blank=True, null=True, verbose_name='number of pages')),
|
|
('publish_date', models.DateField(blank=True, null=True, verbose_name='publish date')),
|
|
],
|
|
options={
|
|
'verbose_name': 'book',
|
|
'verbose_name_plural': 'books',
|
|
},
|
|
bases=('media.medium',),
|
|
),
|
|
migrations.CreateModel(
|
|
name='CD',
|
|
fields=[
|
|
('medium_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='media.Medium')),
|
|
],
|
|
options={
|
|
'verbose_name': 'CD',
|
|
'verbose_name_plural': 'CDs',
|
|
'ordering': ['title'],
|
|
},
|
|
bases=('media.medium',),
|
|
),
|
|
migrations.CreateModel(
|
|
name='Vinyl',
|
|
fields=[
|
|
('medium_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='media.Medium')),
|
|
('rpm', models.PositiveIntegerField(choices=[(33, '33 RPM'), (45, '45 RPM')], verbose_name='rounds per minute')),
|
|
],
|
|
options={
|
|
'verbose_name': 'vinyl',
|
|
'verbose_name_plural': 'vinyls',
|
|
'ordering': ['title'],
|
|
},
|
|
bases=('media.medium',),
|
|
),
|
|
migrations.CreateModel(
|
|
name='Game',
|
|
fields=[
|
|
('borrowable_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='media.Borrowable')),
|
|
('duration', models.CharField(choices=[('-1h', '-1h'), ('1-2h', '1-2h'), ('2-3h', '2-3h'), ('3-4h', '3-4h'), ('4h+', '4h+')], max_length=255, verbose_name='duration')),
|
|
('players_min', models.IntegerField(validators=[django.core.validators.MinValueValidator(1)], verbose_name='minimum number of players')),
|
|
('players_max', models.IntegerField(validators=[django.core.validators.MinValueValidator(1)], verbose_name='maximum number of players')),
|
|
('comment', models.CharField(blank=True, max_length=255, verbose_name='comment')),
|
|
('owner', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to=settings.AUTH_USER_MODEL, verbose_name='owner')),
|
|
],
|
|
options={
|
|
'verbose_name': 'game',
|
|
'verbose_name_plural': 'games',
|
|
'ordering': ['title'],
|
|
},
|
|
bases=('media.borrowable',),
|
|
),
|
|
migrations.CreateModel(
|
|
name='Comic',
|
|
fields=[
|
|
('book_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='media.Book')),
|
|
],
|
|
options={
|
|
'verbose_name': 'comic',
|
|
'verbose_name_plural': 'comics',
|
|
'ordering': ['title', 'subtitle'],
|
|
},
|
|
bases=('media.book',),
|
|
),
|
|
migrations.CreateModel(
|
|
name='Manga',
|
|
fields=[
|
|
('book_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='media.Book')),
|
|
],
|
|
options={
|
|
'verbose_name': 'manga',
|
|
'verbose_name_plural': 'mangas',
|
|
'ordering': ['title', 'subtitle'],
|
|
},
|
|
bases=('media.book',),
|
|
),
|
|
migrations.CreateModel(
|
|
name='Novel',
|
|
fields=[
|
|
('book_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='media.Book')),
|
|
],
|
|
options={
|
|
'verbose_name': 'novel',
|
|
'verbose_name_plural': 'novels',
|
|
'ordering': ['title', 'subtitle'],
|
|
},
|
|
bases=('media.book',),
|
|
),
|
|
]
|