split feature model – beginnings (still missing: API, Forms, Editor)

This commit is contained in:
Laura Klünder 2016-10-12 15:25:00 +02:00
parent 55a7e20df1
commit 0036b27057
15 changed files with 238 additions and 156 deletions

View file

@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.10.1 on 2016-10-11 14:00
# Generated by Django 1.10.1 on 2016-10-12 12:12
from __future__ import unicode_literals
import c3nav.mapdata.fields
@ -16,14 +16,17 @@ class Migration(migrations.Migration):
operations = [
migrations.CreateModel(
name='Feature',
name='Inside',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.SlugField(unique=True, verbose_name='feature identifier')),
('feature_type', models.CharField(choices=[('building', 'Building'), ('room', 'Room'), ('outside', 'Outside Area'), ('obstacle', 'Obstacle')], max_length=50)),
('titles', c3nav.mapdata.fields.JSONField()),
('name', models.SlugField(unique=True, verbose_name='name')),
('geometry', c3nav.mapdata.fields.GeometryField()),
],
options={
'default_related_name': 'insides',
'verbose_name': 'Inside Area',
'verbose_name_plural': 'Inside Areas',
},
),
migrations.CreateModel(
name='Level',
@ -32,6 +35,9 @@ class Migration(migrations.Migration):
('name', models.SlugField(help_text='Usually just an integer (e.g. -1, 0, 1, 2)', unique=True, verbose_name='level name')),
('altitude', models.DecimalField(decimal_places=2, max_digits=6, null=True, verbose_name='level altitude')),
],
options={
'abstract': False,
},
),
migrations.CreateModel(
name='Package',
@ -47,6 +53,24 @@ class Migration(migrations.Migration):
('directory', models.CharField(max_length=100, verbose_name='folder name')),
('depends', models.ManyToManyField(to='mapdata.Package')),
],
options={
'abstract': False,
},
),
migrations.CreateModel(
name='Room',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.SlugField(unique=True, verbose_name='name')),
('geometry', c3nav.mapdata.fields.GeometryField()),
('level', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='rooms', to='mapdata.Level', verbose_name='level')),
('package', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='rooms', to='mapdata.Package', verbose_name='map package')),
],
options={
'default_related_name': 'rooms',
'verbose_name': 'Room',
'verbose_name_plural': 'Rooms',
},
),
migrations.CreateModel(
name='Source',
@ -59,6 +83,9 @@ class Migration(migrations.Migration):
('right', models.DecimalField(decimal_places=2, max_digits=6, verbose_name='right coordinate')),
('package', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='sources', to='mapdata.Package', verbose_name='map package')),
],
options={
'abstract': False,
},
),
migrations.AddField(
model_name='level',
@ -66,13 +93,13 @@ class Migration(migrations.Migration):
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='levels', to='mapdata.Package', verbose_name='map package'),
),
migrations.AddField(
model_name='feature',
model_name='inside',
name='level',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='features', to='mapdata.Level', verbose_name='level'),
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='insides', to='mapdata.Level', verbose_name='level'),
),
migrations.AddField(
model_name='feature',
model_name='inside',
name='package',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='features', to='mapdata.Package', verbose_name='map package'),
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='insides', to='mapdata.Package', verbose_name='map package'),
),
]