diff --git a/db.sqlite3 b/db.sqlite3 index 08493af..c9c273c 100644 Binary files a/db.sqlite3 and b/db.sqlite3 differ diff --git a/evolus/admin.py b/evolus/admin.py index 785c0ba..718b9bc 100644 --- a/evolus/admin.py +++ b/evolus/admin.py @@ -1,8 +1,13 @@ from django.contrib import admin -from .models import Audience, Document, Structure +from .models import Audience, Document, Site, Structure + + +class DocumentAdmin(admin.ModelAdmin): + list_filter = ('audiences', 'sites', 'structures') admin.site.register(Audience) +admin.site.register(Site) admin.site.register(Structure) -admin.site.register(Document) \ No newline at end of file +admin.site.register(Document, DocumentAdmin) \ No newline at end of file diff --git a/evolus/filters.py b/evolus/filters.py index 45065df..454c973 100644 --- a/evolus/filters.py +++ b/evolus/filters.py @@ -6,4 +6,4 @@ from evolus.models import Document class DocumentFilter(django_filters.FilterSet): class Meta: model = Document - fields = ('audience', 'structure', 'standards') + fields = ('audiences', 'sites', 'structures', 'standards') diff --git a/evolus/migrations/0005_auto_20170918_1251.py b/evolus/migrations/0005_auto_20170918_1251.py new file mode 100644 index 0000000..7cbad96 --- /dev/null +++ b/evolus/migrations/0005_auto_20170918_1251.py @@ -0,0 +1,27 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.5 on 2017-09-18 10:51 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('evolus', '0004_auto_20170915_0954'), + ] + + operations = [ + migrations.CreateModel( + name='Site', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=50)), + ], + ), + migrations.AddField( + model_name='document', + name='sites', + field=models.ManyToManyField(to='evolus.Site'), + ), + ] diff --git a/evolus/migrations/0006_auto_20170918_1254.py b/evolus/migrations/0006_auto_20170918_1254.py new file mode 100644 index 0000000..fc8d336 --- /dev/null +++ b/evolus/migrations/0006_auto_20170918_1254.py @@ -0,0 +1,25 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.5 on 2017-09-18 10:54 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('evolus', '0005_auto_20170918_1251'), + ] + + operations = [ + migrations.AlterModelOptions( + name='site', + options={'ordering': ['name']}, + ), + migrations.AddField( + model_name='document', + name='title', + field=models.CharField(default='', max_length=255), + preserve_default=False, + ), + ] diff --git a/evolus/migrations/0007_document_overview.py b/evolus/migrations/0007_document_overview.py new file mode 100644 index 0000000..eed4bbb --- /dev/null +++ b/evolus/migrations/0007_document_overview.py @@ -0,0 +1,20 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.5 on 2017-09-18 10:56 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('evolus', '0006_auto_20170918_1254'), + ] + + operations = [ + migrations.AddField( + model_name='document', + name='overview', + field=models.TextField(blank=True, null=True), + ), + ] diff --git a/evolus/migrations/0008_auto_20170918_1305.py b/evolus/migrations/0008_auto_20170918_1305.py new file mode 100644 index 0000000..81d3fcc --- /dev/null +++ b/evolus/migrations/0008_auto_20170918_1305.py @@ -0,0 +1,25 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.5 on 2017-09-18 11:05 +from __future__ import unicode_literals + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('evolus', '0007_document_overview'), + ] + + operations = [ + migrations.RenameField( + model_name='document', + old_name='audience', + new_name='audiences', + ), + migrations.RenameField( + model_name='document', + old_name='structure', + new_name='structures', + ), + ] diff --git a/evolus/models.py b/evolus/models.py index ae9ac60..aa9d639 100644 --- a/evolus/models.py +++ b/evolus/models.py @@ -15,6 +15,17 @@ class Audience(ClosureModel): def __str__(self): return self.name + +class Site(models.Model): + name = models.CharField(max_length=50) + + def __str__(self): + return self.name + + class Meta: + ordering = ['name'] + + class Structure(ClosureModel): name = models.CharField(max_length=50) parent = models.ForeignKey('self', related_name='children', null=True, blank=True) @@ -22,10 +33,14 @@ class Structure(ClosureModel): def __str__(self): return self.name + class Document(models.Model): - audience = models.ManyToManyField(Audience) + audiences = models.ManyToManyField(Audience) + sites = models.ManyToManyField(Site) standards = models.ManyToManyField(Standard) - structure = models.ManyToManyField(Structure) + structures = models.ManyToManyField(Structure) + title = models.CharField(max_length=255) + overview = models.TextField(blank=True, null=True) def __str__(self): - return '{} {}'.format(self.audience, self.structure) \ No newline at end of file + return self.title \ No newline at end of file