You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

116 lines
5.7 KiB

  1. # Generated by Django 2.0.5 on 2018-08-09 02:09
  2. from django.conf import settings
  3. from django.db import migrations, models
  4. import django.db.models.deletion
  5. class Migration(migrations.Migration):
  6. initial = True
  7. dependencies = [
  8. migrations.swappable_dependency(settings.AUTH_USER_MODEL),
  9. ]
  10. operations = [
  11. migrations.CreateModel(
  12. name='Document',
  13. fields=[
  14. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  15. ('text', models.TextField()),
  16. ],
  17. ),
  18. migrations.CreateModel(
  19. name='DocumentAnnotation',
  20. fields=[
  21. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  22. ('prob', models.FloatField(default=0.0)),
  23. ('manual', models.BooleanField(default=False)),
  24. ('document', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='doc_annotations', to='server.Document')),
  25. ],
  26. ),
  27. migrations.CreateModel(
  28. name='Label',
  29. fields=[
  30. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  31. ('text', models.CharField(max_length=100)),
  32. ('shortcut', models.CharField(choices=[('a', 'a'), ('b', 'b'), ('c', 'c'), ('d', 'd'), ('e', 'e'), ('f', 'f'), ('g', 'g'), ('h', 'h'), ('i', 'i'), ('j', 'j'), ('k', 'k'), ('l', 'l'), ('m', 'm'), ('n', 'n'), ('o', 'o'), ('p', 'p'), ('q', 'q'), ('r', 'r'), ('s', 's'), ('t', 't'), ('u', 'u'), ('v', 'v'), ('w', 'w'), ('x', 'x'), ('y', 'y'), ('z', 'z')], max_length=10)),
  33. ('background_color', models.CharField(default='#209cee', max_length=7)),
  34. ('text_color', models.CharField(default='#ffffff', max_length=7)),
  35. ],
  36. ),
  37. migrations.CreateModel(
  38. name='Project',
  39. fields=[
  40. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  41. ('name', models.CharField(max_length=100)),
  42. ('description', models.CharField(max_length=500)),
  43. ('guideline', models.TextField()),
  44. ('created_at', models.DateTimeField(auto_now_add=True)),
  45. ('updated_at', models.DateTimeField(auto_now=True)),
  46. ('project_type', models.CharField(choices=[('DocumentClassification', 'document classification'), ('SequenceLabeling', 'sequence labeling'), ('Seq2seq', 'sequence to sequence')], max_length=30)),
  47. ('users', models.ManyToManyField(related_name='projects', to=settings.AUTH_USER_MODEL)),
  48. ],
  49. ),
  50. migrations.CreateModel(
  51. name='Seq2seqAnnotation',
  52. fields=[
  53. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  54. ('prob', models.FloatField(default=0.0)),
  55. ('manual', models.BooleanField(default=False)),
  56. ('text', models.TextField()),
  57. ('document', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='seq2seq_annotations', to='server.Document')),
  58. ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
  59. ],
  60. ),
  61. migrations.CreateModel(
  62. name='SequenceAnnotation',
  63. fields=[
  64. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  65. ('prob', models.FloatField(default=0.0)),
  66. ('manual', models.BooleanField(default=False)),
  67. ('start_offset', models.IntegerField()),
  68. ('end_offset', models.IntegerField()),
  69. ('document', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='seq_annotations', to='server.Document')),
  70. ('label', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='server.Label')),
  71. ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
  72. ],
  73. ),
  74. migrations.AddField(
  75. model_name='label',
  76. name='project',
  77. field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='labels', to='server.Project'),
  78. ),
  79. migrations.AddField(
  80. model_name='documentannotation',
  81. name='label',
  82. field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='server.Label'),
  83. ),
  84. migrations.AddField(
  85. model_name='documentannotation',
  86. name='user',
  87. field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
  88. ),
  89. migrations.AddField(
  90. model_name='document',
  91. name='project',
  92. field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='documents', to='server.Project'),
  93. ),
  94. migrations.AlterUniqueTogether(
  95. name='sequenceannotation',
  96. unique_together={('document', 'user', 'label', 'start_offset', 'end_offset')},
  97. ),
  98. migrations.AlterUniqueTogether(
  99. name='seq2seqannotation',
  100. unique_together={('document', 'user', 'text')},
  101. ),
  102. migrations.AlterUniqueTogether(
  103. name='label',
  104. unique_together={('project', 'text'), ('project', 'shortcut')},
  105. ),
  106. migrations.AlterUniqueTogether(
  107. name='documentannotation',
  108. unique_together={('document', 'user', 'label')},
  109. ),
  110. ]