98 lines
3.7 KiB
Python
98 lines
3.7 KiB
Python
# -*- coding: utf-8 -*-
|
|
from __future__ import unicode_literals
|
|
|
|
from django.db import models, migrations
|
|
import jsonfield.fields
|
|
from django.utils.timezone import utc
|
|
import datetime
|
|
from django.conf import settings
|
|
|
|
|
|
def clear_document(apps, schema_editor):
|
|
Document = apps.get_model('fargo', 'Document')
|
|
Document.objects.all().delete()
|
|
|
|
|
|
def noop(apps, schema_editor):
|
|
pass
|
|
|
|
|
|
class Migration(migrations.Migration):
|
|
|
|
dependencies = [
|
|
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
|
('fargo', '0002_auto_20150818_2117'),
|
|
]
|
|
|
|
operations = [
|
|
migrations.RunPython(clear_document, noop),
|
|
migrations.CreateModel(
|
|
name='UserDocument',
|
|
fields=[
|
|
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
|
|
('filename', models.CharField(max_length=512, verbose_name='filename')),
|
|
('created', models.DateTimeField(auto_now_add=True, verbose_name='creation date')),
|
|
],
|
|
options={
|
|
'ordering': ('-created', 'user'),
|
|
'verbose_name': 'user document',
|
|
'verbose_name_plural': 'user documents',
|
|
},
|
|
),
|
|
migrations.CreateModel(
|
|
name='Validation',
|
|
fields=[
|
|
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
|
|
('document_type', models.CharField(max_length=256, verbose_name='document type')),
|
|
('data', jsonfield.fields.JSONField(null=True, verbose_name='data')),
|
|
('start', models.DateField(verbose_name='start date')),
|
|
('end', models.DateField(verbose_name='end date')),
|
|
('creator', models.CharField(max_length=256, verbose_name='creator')),
|
|
('created', models.DateTimeField(auto_now_add=True, verbose_name='creation date')),
|
|
('user_document', models.ForeignKey(verbose_name='user document', to='fargo.UserDocument', on_delete=models.CASCADE)),
|
|
],
|
|
),
|
|
migrations.AlterModelOptions(
|
|
name='document',
|
|
options={'ordering': ('content_hash',), 'verbose_name': 'document', 'verbose_name_plural': 'documents'},
|
|
),
|
|
migrations.RenameField(
|
|
model_name='document',
|
|
old_name='document_file',
|
|
new_name='content',
|
|
),
|
|
migrations.RemoveField(
|
|
model_name='document',
|
|
name='creation',
|
|
),
|
|
migrations.RemoveField(
|
|
model_name='document',
|
|
name='document_filename',
|
|
),
|
|
migrations.RemoveField(
|
|
model_name='document',
|
|
name='id',
|
|
),
|
|
migrations.RemoveField(
|
|
model_name='document',
|
|
name='user',
|
|
),
|
|
migrations.AddField(
|
|
model_name='document',
|
|
name='content_hash',
|
|
field=models.CharField(default=datetime.datetime(2015, 9, 24, 10, 56, 54, 873399, tzinfo=utc), max_length=128, serialize=False, verbose_name='content hash', primary_key=True),
|
|
preserve_default=False,
|
|
),
|
|
migrations.AddField(
|
|
model_name='userdocument',
|
|
name='document',
|
|
field=models.ForeignKey(related_name='user_documents', verbose_name='document', to='fargo.Document', on_delete=models.CASCADE),
|
|
),
|
|
migrations.AddField(
|
|
model_name='userdocument',
|
|
name='user',
|
|
field=models.ForeignKey(verbose_name='user', to=settings.AUTH_USER_MODEL, on_delete=models.CASCADE),
|
|
),
|
|
migrations.RunPython(noop, clear_document),
|
|
]
|