Coverage for rest_api/migrations/0001_initial.py: 100%
6 statements
« prev ^ index » next coverage.py v7.15.4, created at 2026-08-10 03:22 +0000
« prev ^ index » next coverage.py v7.15.4, created at 2026-08-10 03:22 +0000
1# Generated by Django 4.2.4 on 2023-08-31 08:17
3from django.db import migrations, models
4import django.db.models.deletion
7class Migration(migrations.Migration):
8 initial = True
10 dependencies = []
12 operations = [
13 migrations.CreateModel(
14 name="Alignment",
15 fields=[
16 ("id", models.BigIntegerField(primary_key=True, serialize=False)),
17 ("element", models.BigIntegerField(blank=True, null=True)),
18 ],
19 options={
20 "db_table": "alignment",
21 },
22 ),
23 migrations.CreateModel(
24 name="Alignment2Variant",
25 fields=[
26 (
27 "id",
28 models.BigAutoField(
29 auto_created=True,
30 primary_key=True,
31 serialize=False,
32 verbose_name="ID",
33 ),
34 ),
35 (
36 "alignment",
37 models.ForeignKey(
38 on_delete=django.db.models.deletion.DO_NOTHING,
39 to="rest_api.alignment",
40 ),
41 ),
42 ],
43 options={
44 "db_table": "alignment2variant",
45 },
46 ),
47 migrations.CreateModel(
48 name="AnnotationType",
49 fields=[
50 ("id", models.BigAutoField(primary_key=True, serialize=False)),
51 (
52 "seq_ontology",
53 models.CharField(blank=True, max_length=50, null=True),
54 ),
55 ("region", models.CharField(blank=True, max_length=50, null=True)),
56 ("test", models.CharField(blank=True, max_length=50, null=True)),
57 ],
58 options={
59 "db_table": "annotation_type",
60 },
61 ),
62 migrations.CreateModel(
63 name="Element",
64 fields=[
65 ("id", models.BigIntegerField(primary_key=True, serialize=False)),
66 ("type", models.TextField(blank=True, null=True)),
67 ("accession", models.TextField(blank=True, null=True, unique=True)),
68 ("symbol", models.TextField(blank=True, null=True)),
69 ("description", models.TextField(blank=True, null=True)),
70 ("start", models.BigIntegerField(blank=True, null=True)),
71 ("end", models.BigIntegerField(blank=True, null=True)),
72 ("strand", models.BigIntegerField(blank=True, null=True)),
73 ("sequence", models.TextField(blank=True, null=True)),
74 ("standard", models.BooleanField(blank=True, null=True)),
75 ("parent_id", models.BigIntegerField(blank=True, null=True)),
76 ],
77 options={
78 "db_table": "element",
79 },
80 ),
81 migrations.CreateModel(
82 name="Lineages",
83 fields=[
84 ("id", models.BigAutoField(primary_key=True, serialize=False)),
85 ("lineage", models.CharField(max_length=100)),
86 ("sublineage", models.TextField(blank=True, null=True)),
87 ],
88 options={
89 "db_table": "lineages",
90 },
91 ),
92 migrations.CreateModel(
93 name="Property",
94 fields=[
95 ("id", models.BigIntegerField(primary_key=True, serialize=False)),
96 ("name", models.TextField(blank=True, null=True, unique=True)),
97 ("datatype", models.TextField(blank=True, null=True)),
98 ("querytype", models.TextField(blank=True, null=True)),
99 ("description", models.TextField(blank=True, null=True)),
100 ("target", models.TextField(blank=True, null=True)),
101 ("standard", models.TextField(blank=True, null=True)),
102 ],
103 options={
104 "db_table": "property",
105 },
106 ),
107 migrations.CreateModel(
108 name="Sequence",
109 fields=[
110 ("id", models.BigAutoField(primary_key=True, serialize=False)),
111 ("seqhash", models.CharField(max_length=200, unique=True)),
112 ],
113 options={
114 "db_table": "sequence",
115 },
116 ),
117 migrations.CreateModel(
118 name="TranslationGroup",
119 fields=[
120 ("id", models.BigAutoField(primary_key=True, serialize=False)),
121 ],
122 options={
123 "db_table": "translation_group",
124 },
125 ),
126 migrations.CreateModel(
127 name="Variant",
128 fields=[
129 ("id", models.BigIntegerField(primary_key=True, serialize=False)),
130 ("ref", models.TextField(blank=True, null=True)),
131 ("alt", models.TextField(blank=True, null=True)),
132 ("start", models.BigIntegerField(blank=True, null=True)),
133 ("end", models.BigIntegerField(blank=True, null=True)),
134 ("parent_id", models.BigIntegerField(blank=True, null=True)),
135 ("label", models.TextField(blank=True, null=True)),
136 ("frameshift", models.BigIntegerField(blank=True, null=True)),
137 ("sample_name", models.CharField(blank=True, max_length=50, null=True)),
138 (
139 "nuc_profile",
140 models.CharField(blank=True, max_length=1024, null=True),
141 ),
142 (
143 "aa_profile",
144 models.CharField(blank=True, max_length=1024, null=True),
145 ),
146 ("imported", models.CharField(blank=True, max_length=50, null=True)),
147 (
148 "collection_date",
149 models.CharField(blank=True, max_length=50, null=True),
150 ),
151 (
152 "release_date",
153 models.CharField(blank=True, max_length=50, null=True),
154 ),
155 ("isolate", models.CharField(blank=True, max_length=50, null=True)),
156 ("length", models.IntegerField(blank=True, null=True)),
157 ("seq_tech", models.CharField(blank=True, max_length=50, null=True)),
158 ("country", models.CharField(blank=True, max_length=50, null=True)),
159 (
160 "geo_location",
161 models.CharField(blank=True, max_length=50, null=True),
162 ),
163 ("host", models.CharField(blank=True, max_length=50, null=True)),
164 (
165 "genome_completeness",
166 models.CharField(blank=True, max_length=50, null=True),
167 ),
168 (
169 "reference_accession",
170 models.CharField(blank=True, max_length=50, null=True),
171 ),
172 (
173 "alignments",
174 models.ManyToManyField(
175 through="rest_api.Alignment2Variant", to="rest_api.alignment"
176 ),
177 ),
178 (
179 "element",
180 models.ForeignKey(
181 blank=True,
182 null=True,
183 on_delete=django.db.models.deletion.DO_NOTHING,
184 to="rest_api.element",
185 ),
186 ),
187 ],
188 options={
189 "db_table": "variant",
190 },
191 ),
192 migrations.CreateModel(
193 name="Sample",
194 fields=[
195 ("id", models.BigIntegerField(primary_key=True, serialize=False)),
196 ("name", models.TextField(blank=True, null=True, unique=True)),
197 ("datahash", models.TextField(blank=True, null=True)),
198 (
199 "sequence",
200 models.ForeignKey(
201 blank=True,
202 null=True,
203 on_delete=django.db.models.deletion.DO_NOTHING,
204 related_name="samples",
205 to="rest_api.sequence",
206 ),
207 ),
208 ],
209 options={
210 "db_table": "sample",
211 },
212 ),
213 migrations.CreateModel(
214 name="Reference",
215 fields=[
216 ("id", models.BigIntegerField(primary_key=True, serialize=False)),
217 ("accession", models.TextField(blank=True, null=True, unique=True)),
218 ("description", models.TextField(blank=True, null=True)),
219 ("organism", models.TextField(blank=True, null=True)),
220 ("standard", models.BooleanField(blank=True, null=True)),
221 (
222 "translation_group",
223 models.ForeignKey(
224 on_delete=django.db.models.deletion.DO_NOTHING,
225 to="rest_api.translationgroup",
226 ),
227 ),
228 ],
229 options={
230 "db_table": "reference",
231 },
232 ),
233 migrations.CreateModel(
234 name="Molecule",
235 fields=[
236 ("id", models.BigIntegerField(primary_key=True, serialize=False)),
237 ("type", models.TextField(blank=True, null=True)),
238 ("accession", models.TextField(blank=True, null=True, unique=True)),
239 ("symbol", models.TextField(blank=True, null=True)),
240 ("description", models.TextField(blank=True, null=True)),
241 ("length", models.BigIntegerField(blank=True, null=True)),
242 ("segment", models.BigIntegerField(blank=True, null=True)),
243 ("standard", models.SmallIntegerField(blank=True, null=True)),
244 (
245 "reference",
246 models.ForeignKey(
247 blank=True,
248 null=True,
249 on_delete=django.db.models.deletion.DO_NOTHING,
250 to="rest_api.reference",
251 ),
252 ),
253 ],
254 options={
255 "db_table": "molecule",
256 },
257 ),
258 migrations.CreateModel(
259 name="Elempart",
260 fields=[
261 ("id", models.BigAutoField(primary_key=True, serialize=False)),
262 ("start", models.BigIntegerField()),
263 ("end", models.BigIntegerField()),
264 ("strand", models.BigIntegerField()),
265 ("base", models.FloatField()),
266 ("segment", models.BigIntegerField()),
267 (
268 "element",
269 models.ForeignKey(
270 blank=True,
271 null=True,
272 on_delete=django.db.models.deletion.DO_NOTHING,
273 to="rest_api.element",
274 ),
275 ),
276 ],
277 options={
278 "db_table": "elempart",
279 },
280 ),
281 migrations.AddField(
282 model_name="element",
283 name="molecule",
284 field=models.ForeignKey(
285 blank=True,
286 null=True,
287 on_delete=django.db.models.deletion.DO_NOTHING,
288 to="rest_api.molecule",
289 ),
290 ),
291 migrations.AddField(
292 model_name="alignment2variant",
293 name="variant",
294 field=models.ForeignKey(
295 on_delete=django.db.models.deletion.DO_NOTHING, to="rest_api.variant"
296 ),
297 ),
298 migrations.AddField(
299 model_name="alignment",
300 name="sequence",
301 field=models.ForeignKey(
302 blank=True,
303 null=True,
304 on_delete=django.db.models.deletion.DO_NOTHING,
305 to="rest_api.sequence",
306 ),
307 ),
308 migrations.CreateModel(
309 name="Variant2Property",
310 fields=[
311 (
312 "id",
313 models.BigAutoField(
314 auto_created=True,
315 primary_key=True,
316 serialize=False,
317 verbose_name="ID",
318 ),
319 ),
320 ("value_integer", models.BigIntegerField(blank=True, null=True)),
321 (
322 "value_float",
323 models.DecimalField(
324 blank=True, decimal_places=10, max_digits=10, null=True
325 ),
326 ),
327 ("value_text", models.TextField(blank=True, null=True)),
328 ("value_varchar", models.TextField(blank=True, null=True)),
329 ("value_blob", models.BinaryField(blank=True, null=True)),
330 ("value_date", models.DateField(blank=True, null=True)),
331 ("value_zip", models.TextField(blank=True, null=True)),
332 (
333 "property",
334 models.ForeignKey(
335 on_delete=django.db.models.deletion.DO_NOTHING,
336 to="rest_api.property",
337 ),
338 ),
339 (
340 "variant",
341 models.ForeignKey(
342 on_delete=django.db.models.deletion.DO_NOTHING,
343 to="rest_api.variant",
344 ),
345 ),
346 ],
347 options={
348 "db_table": "variant2property",
349 "unique_together": {("property", "variant")},
350 },
351 ),
352 migrations.CreateModel(
353 name="Variant2Annotation",
354 fields=[
355 (
356 "id",
357 models.BigAutoField(
358 auto_created=True,
359 primary_key=True,
360 serialize=False,
361 verbose_name="ID",
362 ),
363 ),
364 (
365 "alignment",
366 models.ForeignKey(
367 on_delete=django.db.models.deletion.DO_NOTHING,
368 to="rest_api.alignment",
369 ),
370 ),
371 (
372 "annotation",
373 models.ForeignKey(
374 on_delete=django.db.models.deletion.DO_NOTHING,
375 to="rest_api.annotationtype",
376 ),
377 ),
378 (
379 "variant",
380 models.ForeignKey(
381 on_delete=django.db.models.deletion.DO_NOTHING,
382 to="rest_api.variant",
383 ),
384 ),
385 ],
386 options={
387 "db_table": "variant2annotation",
388 "unique_together": {("variant", "alignment", "annotation")},
389 },
390 ),
391 migrations.CreateModel(
392 name="Translation",
393 fields=[
394 ("id", models.BigAutoField(primary_key=True, serialize=False)),
395 ("codon", models.TextField(blank=True, null=True)),
396 ("aa", models.TextField(blank=True, null=True)),
397 (
398 "group",
399 models.ForeignKey(
400 blank=True,
401 null=True,
402 on_delete=django.db.models.deletion.DO_NOTHING,
403 to="rest_api.translationgroup",
404 ),
405 ),
406 ],
407 options={
408 "db_table": "translation",
409 "unique_together": {("group", "codon")},
410 },
411 ),
412 migrations.CreateModel(
413 name="Sample2Property",
414 fields=[
415 (
416 "id",
417 models.BigAutoField(
418 auto_created=True,
419 primary_key=True,
420 serialize=False,
421 verbose_name="ID",
422 ),
423 ),
424 ("value_integer", models.BigIntegerField(blank=True, null=True)),
425 (
426 "value_float",
427 models.DecimalField(
428 blank=True, decimal_places=10, max_digits=10, null=True
429 ),
430 ),
431 ("value_text", models.TextField(blank=True, null=True)),
432 ("value_varchar", models.TextField(blank=True, null=True)),
433 ("value_blob", models.BinaryField(blank=True, null=True)),
434 ("value_date", models.DateField(blank=True, null=True)),
435 ("value_zip", models.TextField(blank=True, null=True)),
436 (
437 "property",
438 models.ForeignKey(
439 on_delete=django.db.models.deletion.DO_NOTHING,
440 to="rest_api.property",
441 ),
442 ),
443 (
444 "sample",
445 models.ForeignKey(
446 on_delete=django.db.models.deletion.DO_NOTHING,
447 to="rest_api.sample",
448 ),
449 ),
450 ],
451 options={
452 "db_table": "sample2property",
453 "unique_together": {("property", "sample")},
454 },
455 ),
456 migrations.AlterUniqueTogether(
457 name="alignment2variant",
458 unique_together={("variant", "alignment")},
459 ),
460 ]