add procat2 catalog, region, and season models
This commit is contained in:
60
procat2/migrations/0003_auto_20190423_2203.py
Normal file
60
procat2/migrations/0003_auto_20190423_2203.py
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
# Generated by Django 2.1.7 on 2019-04-23 22:03
|
||||||
|
|
||||||
|
from django.conf import settings
|
||||||
|
import django.contrib.postgres.fields.jsonb
|
||||||
|
from django.db import migrations, models
|
||||||
|
import django.db.models.deletion
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
initial = True
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||||
|
('procat2', '0002_site_changes'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.CreateModel(
|
||||||
|
name='Catalog',
|
||||||
|
fields=[
|
||||||
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
|
('created', models.DateTimeField(auto_now_add=True)),
|
||||||
|
('updated', models.DateTimeField(auto_now=True)),
|
||||||
|
('name', models.CharField(max_length=300)),
|
||||||
|
('public', models.BooleanField(default=False)),
|
||||||
|
('pages', models.PositiveIntegerField(default=0)),
|
||||||
|
('sections', models.PositiveIntegerField(default=0)),
|
||||||
|
('materials', models.PositiveIntegerField(default=0)),
|
||||||
|
('data', django.contrib.postgres.fields.jsonb.JSONField(null=True)),
|
||||||
|
('owner', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
migrations.CreateModel(
|
||||||
|
name='Region',
|
||||||
|
fields=[
|
||||||
|
('id', models.CharField(max_length=30, primary_key=True, serialize=False)),
|
||||||
|
('name', models.CharField(max_length=100)),
|
||||||
|
('ordering', models.PositiveIntegerField(default=1000, unique=True)),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
migrations.CreateModel(
|
||||||
|
name='Season',
|
||||||
|
fields=[
|
||||||
|
('id', models.CharField(max_length=30, primary_key=True, serialize=False)),
|
||||||
|
('name', models.CharField(max_length=100)),
|
||||||
|
('ordering', models.PositiveIntegerField(default=1000, unique=True)),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='catalog',
|
||||||
|
name='region',
|
||||||
|
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='procat2.Region'),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='catalog',
|
||||||
|
name='season',
|
||||||
|
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='procat2.Season'),
|
||||||
|
),
|
||||||
|
]
|
||||||
33
procat2/models.py
Normal file
33
procat2/models.py
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
from django.db import models
|
||||||
|
from django.conf import settings
|
||||||
|
from django.contrib.postgres.fields import JSONField
|
||||||
|
|
||||||
|
|
||||||
|
class Season(models.Model):
|
||||||
|
id = models.CharField(max_length=30, primary_key=True)
|
||||||
|
name = models.CharField(max_length=100)
|
||||||
|
ordering = models.PositiveIntegerField(unique=True, default=1000)
|
||||||
|
|
||||||
|
|
||||||
|
class Region(models.Model):
|
||||||
|
id = models.CharField(max_length=30, primary_key=True)
|
||||||
|
name = models.CharField(max_length=100)
|
||||||
|
ordering = models.PositiveIntegerField(unique=True, default=1000)
|
||||||
|
|
||||||
|
|
||||||
|
class Catalog(models.Model):
|
||||||
|
owner = models.ForeignKey(settings.AUTH_USER_MODEL,
|
||||||
|
on_delete=models.CASCADE)
|
||||||
|
season = models.ForeignKey(Season, on_delete=models.PROTECT)
|
||||||
|
region = models.ForeignKey(Region, on_delete=models.PROTECT)
|
||||||
|
created = models.DateTimeField(auto_now_add=True)
|
||||||
|
updated = models.DateTimeField(auto_now=True)
|
||||||
|
name = models.CharField(max_length=300)
|
||||||
|
public = models.BooleanField(default=False)
|
||||||
|
pages = models.PositiveIntegerField(default=0)
|
||||||
|
sections = models.PositiveIntegerField(default=0)
|
||||||
|
materials = models.PositiveIntegerField(default=0)
|
||||||
|
data = JSONField(null=True)
|
||||||
|
|
||||||
|
# JSONField docs:
|
||||||
|
# https://docs.djangoproject.com/en/2.2/ref/contrib/postgres/fields/#jsonfield
|
||||||
Reference in New Issue
Block a user