|
| 1 | +# Generated by Django 5.0.7 on 2024-10-07 18:20 |
| 2 | + |
| 3 | +import django.db.models.deletion |
| 4 | +from django.db import migrations, models |
| 5 | + |
| 6 | + |
| 7 | +class Migration(migrations.Migration): |
| 8 | + |
| 9 | + initial = True |
| 10 | + |
| 11 | + dependencies = [ |
| 12 | + ('datasources', '0001_initial'), |
| 13 | + ('signals', '0002_auto_20241002_2027'), |
| 14 | + ] |
| 15 | + |
| 16 | + operations = [ |
| 17 | + migrations.CreateModel( |
| 18 | + name='SignalSet', |
| 19 | + fields=[ |
| 20 | + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), |
| 21 | + ('name', models.CharField(max_length=128, unique=True, verbose_name='255')), |
| 22 | + ('data_description', models.TextField(blank=True, verbose_name='Data Description')), |
| 23 | + ('maintainer_name', models.CharField(blank=True, max_length=128, verbose_name='Maintainer Name')), |
| 24 | + ('maintainer_email', models.CharField(blank=True, max_length=128, verbose_name='Maintainer Email')), |
| 25 | + ('organization', models.CharField(blank=True, max_length=128, verbose_name='Organization')), |
| 26 | + ('language', models.CharField(blank=True, max_length=128, verbose_name='Language')), |
| 27 | + ('version_number', models.CharField(blank=True, max_length=128, verbose_name='Version Number')), |
| 28 | + ('origin_datasource', models.CharField(blank=True, max_length=128, verbose_name='Origin Data Source')), |
| 29 | + ('data_type', models.CharField(blank=True, max_length=128, verbose_name='Data Type')), |
| 30 | + ('preprocessing_description', models.CharField(blank=True, max_length=128, verbose_name='Preprocessing Description')), |
| 31 | + ('temporal_scope_start', models.CharField(help_text='Temporal scope start of the signal set.', max_length=255, verbose_name='temporal scope start')), |
| 32 | + ('temporal_scope_end', models.CharField(help_text='Temporal scope end of the signal set.', max_length=255, verbose_name='temporal scope end')), |
| 33 | + ('temporal_granularity', models.CharField(help_text='Temporal granularity of the signal set.', max_length=255, verbose_name='temporal granularity')), |
| 34 | + ('reporting_cadence', models.CharField(help_text='Reporting cadence of the signal set.', max_length=255, verbose_name='reporting cadence')), |
| 35 | + ('reporting_lag', models.CharField(help_text='Typical reporting lag of the signal set.', max_length=255, verbose_name='typical reporting lag')), |
| 36 | + ('revision_cadence', models.CharField(help_text='Revision cadence of the signal set.', max_length=255, verbose_name='revision cadence')), |
| 37 | + ('demographic_scope', models.CharField(help_text='Demographic scope of the signal set.', max_length=255, verbose_name='demographic scope')), |
| 38 | + ('demographic_granularity', models.CharField(help_text='Demographic granularity of the signal set.', max_length=255, verbose_name='demographic granularity')), |
| 39 | + ('censoring', models.CharField(help_text='Data censoring of the signal set.', max_length=255, verbose_name='data censoring')), |
| 40 | + ('missingness', models.CharField(help_text='Missingness of the signal set.', max_length=255, verbose_name='missingness')), |
| 41 | + ('dua_required', models.BooleanField(help_text='Whether a data use agreement is required to access the signal set.', verbose_name='DUA Required')), |
| 42 | + ('license', models.CharField(help_text='License of the signal set.', max_length=255, verbose_name='license')), |
| 43 | + ('dataset_location', models.CharField(help_text='Location of the dataset.', max_length=255, verbose_name='dataset location')), |
| 44 | + ('link_to_dictionary', models.CharField(help_text='Link to the dictionary.', max_length=255, verbose_name='link to dictionary')), |
| 45 | + ('data_source', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='datasources.datasource', verbose_name='Data Source')), |
| 46 | + ('geographic_scope', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='signal_sets', to='signals.geographicscope', verbose_name='Geographic Scope')), |
| 47 | + ('pathogens', models.ManyToManyField(help_text='Pathogen(s) associated with the signal set.', related_name='signal_sets', to='signals.pathogen', verbose_name='Pathogen')), |
| 48 | + ('severity_pyramid_rungs', models.ManyToManyField(blank=True, help_text='Severity pyramid rungs of the signal set.', null=True, related_name='signal_sets', to='signals.severitypyramidrung')), |
| 49 | + ], |
| 50 | + options={ |
| 51 | + 'ordering': ['name'], |
| 52 | + }, |
| 53 | + ), |
| 54 | + migrations.CreateModel( |
| 55 | + name='SignalSetGeography', |
| 56 | + fields=[ |
| 57 | + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), |
| 58 | + ('aggregated_by_delphi', models.BooleanField(default=False)), |
| 59 | + ('geography', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='geography_signal_sets', to='signals.geography')), |
| 60 | + ('signal_set', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='geography_signal_sets', to='signal_sets.signalset')), |
| 61 | + ], |
| 62 | + options={ |
| 63 | + 'verbose_name_plural': 'Signal Geographies', |
| 64 | + 'unique_together': {('geography', 'signal_set')}, |
| 65 | + }, |
| 66 | + ), |
| 67 | + migrations.AddField( |
| 68 | + model_name='signalset', |
| 69 | + name='available_geography', |
| 70 | + field=models.ManyToManyField(related_name='signal_sets', through='signal_sets.SignalSetGeography', to='signals.geography', verbose_name='Available Geography'), |
| 71 | + ), |
| 72 | + migrations.AlterUniqueTogether( |
| 73 | + name='signalset', |
| 74 | + unique_together={('name', 'data_source')}, |
| 75 | + ), |
| 76 | + ] |
0 commit comments