class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Apiary', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255)), ('latitude', models.DecimalField(blank=True, decimal_places=6, max_digits=9, null=True, validators=[django.core.validators.MinValueValidator(-90), django.core.validators.MaxValueValidator(90)])), ('longitude', models.DecimalField(blank=True, decimal_places=6, max_digits=9, null=True, validators=[django.core.validators.MinValueValidator(-180), django.core.validators.MaxValueValidator(180)])), ('address', models.CharField(blank=True, max_length=255, null=True)), ('radius', models.DecimalField(blank=True, decimal_places=2, default=3.0, max_digits=3, null=True, validators=[django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(10)])), ('date_created', models.DateTimeField(auto_now_add=True)), ('notes', models.TextField(blank=True, null=True)), ('owner', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='apiaries', to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name_plural': 'Apiaries', }, ), migrations.CreateModel( name='File', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('file', private_storage.fields.PrivateFileField(storage=private_storage.storage.files.PrivateFileSystemStorage(), upload_to='')), ('date_created', models.DateTimeField(auto_now_add=True)), ('apiary', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='files', to='core.Apiary')), ], ), migrations.CreateModel( name='Harvest', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('date', models.DateField()), ('weight', models.FloatField(validators=[django.core.validators.MinValueValidator(0)])), ], ), migrations.CreateModel( name='Hive', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255)), ('description', models.CharField(blank=True, max_length=255, null=True)), ('date_created', models.DateTimeField(auto_now_add=True)), ('terminated', models.BooleanField(default=False)), ('date_terminated', models.DateTimeField(blank=True, null=True)), ('notes', models.TextField(blank=True, null=True)), ('makes_honey', models.BooleanField(default=False)), ('apiary', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='hives', to='core.Apiary')), ], ), migrations.CreateModel( name='Inspection', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('date', models.DateTimeField()), ('weight', models.FloatField(blank=True, null=True, validators=[django.core.validators.MinValueValidator(0)])), ('saw_queen', models.NullBooleanField(choices=[(True, 'Yes'), (False, 'No')])), ('saw_eggs', models.NullBooleanField(choices=[(True, 'Yes'), (False, 'No')])), ('needs_food', models.NullBooleanField(choices=[(True, 'Yes'), (False, 'No')])), ('gave_food', models.CharField(blank=True, max_length=255, null=True)), ('how_much_food', models.FloatField(blank=True, null=True, validators=[django.core.validators.MinValueValidator(0.1)])), ('mites_counted', models.PositiveSmallIntegerField(blank=True, null=True)), ('mite_treatment', models.CharField(blank=True, max_length=255, null=True)), ('notes', models.TextField(blank=True, null=True)), ('hive', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='inspections', to='core.Hive')), ], options={ 'ordering': ['-date'], }, ), migrations.CreateModel( name='Settings', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('weight_unit', models.CharField(choices=[('metric', 'Metric'), ('imperial', 'Imperial')], default='metric', max_length=10)), ('temperature_unit', models.CharField(choices=[('metric', 'Metric'), ('imperial', 'Imperial')], default='metric', max_length=10)), ('timezone', models.CharField(choices=[('Africa/Abidjan', 'Africa/Abidjan'), ('Africa/Accra', 'Africa/Accra'), ('Africa/Addis_Ababa', 'Africa/Addis Ababa'), ('Africa/Algiers', 'Africa/Algiers'), ('Africa/Asmara', 'Africa/Asmara'), ('Africa/Bamako', 'Africa/Bamako'), ('Africa/Bangui', 'Africa/Bangui'), ('Africa/Banjul', 'Africa/Banjul'), ('Africa/Bissau', 'Africa/Bissau'), ('Africa/Blantyre', 'Africa/Blantyre'), ('Africa/Brazzaville', 'Africa/Brazzaville'), ('Africa/Bujumbura', 'Africa/Bujumbura'), ('Africa/Cairo', 'Africa/Cairo'), ('Africa/Casablanca', 'Africa/Casablanca'), ('Africa/Ceuta', 'Africa/Ceuta'), ('Africa/Conakry', 'Africa/Conakry'), ('Africa/Dakar', 'Africa/Dakar'), ('Africa/Dar_es_Salaam', 'Africa/Dar es Salaam'), ('Africa/Djibouti', 'Africa/Djibouti'), ('Africa/Douala', 'Africa/Douala'), ('Africa/El_Aaiun', 'Africa/El Aaiun'), ('Africa/Freetown', 'Africa/Freetown'), ('Africa/Gaborone', 'Africa/Gaborone'), ('Africa/Harare', 'Africa/Harare'), ('Africa/Johannesburg', 'Africa/Johannesburg'), ('Africa/Juba', 'Africa/Juba'), ('Africa/Kampala', 'Africa/Kampala'), ('Africa/Khartoum', 'Africa/Khartoum'), ('Africa/Kigali', 'Africa/Kigali'), ('Africa/Kinshasa', 'Africa/Kinshasa'), ('Africa/Lagos', 'Africa/Lagos'), ('Africa/Libreville', 'Africa/Libreville'), ('Africa/Lome', 'Africa/Lome'), ('Africa/Luanda', 'Africa/Luanda'), ('Africa/Lubumbashi', 'Africa/Lubumbashi'), ('Africa/Lusaka', 'Africa/Lusaka'), ('Africa/Malabo', 'Africa/Malabo'), ('Africa/Maputo', 'Africa/Maputo'), ('Africa/Maseru', 'Africa/Maseru'), ('Africa/Mbabane', 'Africa/Mbabane'), ('Africa/Mogadishu', 'Africa/Mogadishu'), ('Africa/Monrovia', 'Africa/Monrovia'), ('Africa/Nairobi', 'Africa/Nairobi'), ('Africa/Ndjamena', 'Africa/Ndjamena'), ('Africa/Niamey', 'Africa/Niamey'), ('Africa/Nouakchott', 'Africa/Nouakchott'), ('Africa/Ouagadougou', 'Africa/Ouagadougou'), ('Africa/Porto-Novo', 'Africa/Porto-Novo'), ('Africa/Sao_Tome', 'Africa/Sao Tome'), ('Africa/Tripoli', 'Africa/Tripoli'), ('Africa/Tunis', 'Africa/Tunis'), ('Africa/Windhoek', 'Africa/Windhoek'), ('America/Adak', 'America/Adak'), ('America/Anchorage', 'America/Anchorage'), ('America/Anguilla', 'America/Anguilla'), ('America/Antigua', 'America/Antigua'), ('America/Araguaina', 'America/Araguaina'), ('America/Argentina/Buenos_Aires', 'America/Argentina/Buenos Aires'), ('America/Argentina/Catamarca', 'America/Argentina/Catamarca'), ('America/Argentina/Cordoba', 'America/Argentina/Cordoba'), ('America/Argentina/Jujuy', 'America/Argentina/Jujuy'), ('America/Argentina/La_Rioja', 'America/Argentina/La Rioja'), ('America/Argentina/Mendoza', 'America/Argentina/Mendoza'), ('America/Argentina/Rio_Gallegos', 'America/Argentina/Rio Gallegos'), ('America/Argentina/Salta', 'America/Argentina/Salta'), ('America/Argentina/San_Juan', 'America/Argentina/San Juan'), ('America/Argentina/San_Luis', 'America/Argentina/San Luis'), ('America/Argentina/Tucuman', 'America/Argentina/Tucuman'), ('America/Argentina/Ushuaia', 'America/Argentina/Ushuaia'), ('America/Aruba', 'America/Aruba'), ('America/Asuncion', 'America/Asuncion'), ('America/Atikokan', 'America/Atikokan'), ('America/Bahia', 'America/Bahia'), ('America/Bahia_Banderas', 'America/Bahia Banderas'), ('America/Barbados', 'America/Barbados'), ('America/Belem', 'America/Belem'), ('America/Belize', 'America/Belize'), ('America/Blanc-Sablon', 'America/Blanc-Sablon'), ('America/Boa_Vista', 'America/Boa Vista'), ('America/Bogota', 'America/Bogota'), ('America/Boise', 'America/Boise'), ('America/Cambridge_Bay', 'America/Cambridge Bay'), ('America/Campo_Grande', 'America/Campo Grande'), ('America/Cancun', 'America/Cancun'), ('America/Caracas', 'America/Caracas'), ('America/Cayenne', 'America/Cayenne'), ('America/Cayman', 'America/Cayman'), ('America/Chicago', 'America/Chicago'), ('America/Chihuahua', 'America/Chihuahua'), ('America/Costa_Rica', 'America/Costa Rica'), ('America/Creston', 'America/Creston'), ('America/Cuiaba', 'America/Cuiaba'), ('America/Curacao', 'America/Curacao'), ('America/Danmarkshavn', 'America/Danmarkshavn'), ('America/Dawson', 'America/Dawson'), ('America/Dawson_Creek', 'America/Dawson Creek'), ('America/Denver', 'America/Denver'), ('America/Detroit', 'America/Detroit'), ('America/Dominica', 'America/Dominica'), ('America/Edmonton', 'America/Edmonton'), ('America/Eirunepe', 'America/Eirunepe'), ('America/El_Salvador', 'America/El Salvador'), ('America/Fort_Nelson', 'America/Fort Nelson'), ('America/Fortaleza', 'America/Fortaleza'), ('America/Glace_Bay', 'America/Glace Bay'), ('America/Godthab', 'America/Godthab'), ('America/Goose_Bay', 'America/Goose Bay'), ('America/Grand_Turk', 'America/Grand Turk'), ('America/Grenada', 'America/Grenada'), ('America/Guadeloupe', 'America/Guadeloupe'), ('America/Guatemala', 'America/Guatemala'), ('America/Guayaquil', 'America/Guayaquil'), ('America/Guyana', 'America/Guyana'), ('America/Halifax', 'America/Halifax'), ('America/Havana', 'America/Havana'), ('America/Hermosillo', 'America/Hermosillo'), ('America/Indiana/Indianapolis', 'America/Indiana/Indianapolis'), ('America/Indiana/Knox', 'America/Indiana/Knox'), ('America/Indiana/Marengo', 'America/Indiana/Marengo'), ('America/Indiana/Petersburg', 'America/Indiana/Petersburg'), ('America/Indiana/Tell_City', 'America/Indiana/Tell City'), ('America/Indiana/Vevay', 'America/Indiana/Vevay'), ('America/Indiana/Vincennes', 'America/Indiana/Vincennes'), ('America/Indiana/Winamac', 'America/Indiana/Winamac'), ('America/Inuvik', 'America/Inuvik'), ('America/Iqaluit', 'America/Iqaluit'), ('America/Jamaica', 'America/Jamaica'), ('America/Juneau', 'America/Juneau'), ('America/Kentucky/Louisville', 'America/Kentucky/Louisville'), ('America/Kentucky/Monticello', 'America/Kentucky/Monticello'), ('America/Kralendijk', 'America/Kralendijk'), ('America/La_Paz', 'America/La Paz'), ('America/Lima', 'America/Lima'), ('America/Los_Angeles', 'America/Los Angeles'), ('America/Lower_Princes', 'America/Lower Princes'), ('America/Maceio', 'America/Maceio'), ('America/Managua', 'America/Managua'), ('America/Manaus', 'America/Manaus'), ('America/Marigot', 'America/Marigot'), ('America/Martinique', 'America/Martinique'), ('America/Matamoros', 'America/Matamoros'), ('America/Mazatlan', 'America/Mazatlan'), ('America/Menominee', 'America/Menominee'), ('America/Merida', 'America/Merida'), ('America/Metlakatla', 'America/Metlakatla'), ('America/Mexico_City', 'America/Mexico City'), ('America/Miquelon', 'America/Miquelon'), ('America/Moncton', 'America/Moncton'), ('America/Monterrey', 'America/Monterrey'), ('America/Montevideo', 'America/Montevideo'), ('America/Montserrat', 'America/Montserrat'), ('America/Nassau', 'America/Nassau'), ('America/New_York', 'America/New York'), ('America/Nipigon', 'America/Nipigon'), ('America/Nome', 'America/Nome'), ('America/Noronha', 'America/Noronha'), ('America/North_Dakota/Beulah', 'America/North Dakota/Beulah'), ('America/North_Dakota/Center', 'America/North Dakota/Center'), ('America/North_Dakota/New_Salem', 'America/North Dakota/New Salem'), ('America/Ojinaga', 'America/Ojinaga'), ('America/Panama', 'America/Panama'), ('America/Pangnirtung', 'America/Pangnirtung'), ('America/Paramaribo', 'America/Paramaribo'), ('America/Phoenix', 'America/Phoenix'), ('America/Port-au-Prince', 'America/Port-au-Prince'), ('America/Port_of_Spain', 'America/Port of Spain'), ('America/Porto_Velho', 'America/Porto Velho'), ('America/Puerto_Rico', 'America/Puerto Rico'), ('America/Punta_Arenas', 'America/Punta Arenas'), ('America/Rainy_River', 'America/Rainy River'), ('America/Rankin_Inlet', 'America/Rankin Inlet'), ('America/Recife', 'America/Recife'), ('America/Regina', 'America/Regina'), ('America/Resolute', 'America/Resolute'), ('America/Rio_Branco', 'America/Rio Branco'), ('America/Santarem', 'America/Santarem'), ('America/Santiago', 'America/Santiago'), ('America/Santo_Domingo', 'America/Santo Domingo'), ('America/Sao_Paulo', 'America/Sao Paulo'), ('America/Scoresbysund', 'America/Scoresbysund'), ('America/Sitka', 'America/Sitka'), ('America/St_Barthelemy', 'America/St Barthelemy'), ('America/St_Johns', 'America/St Johns'), ('America/St_Kitts', 'America/St Kitts'), ('America/St_Lucia', 'America/St Lucia'), ('America/St_Thomas', 'America/St Thomas'), ('America/St_Vincent', 'America/St Vincent'), ('America/Swift_Current', 'America/Swift Current'), ('America/Tegucigalpa', 'America/Tegucigalpa'), ('America/Thule', 'America/Thule'), ('America/Thunder_Bay', 'America/Thunder Bay'), ('America/Tijuana', 'America/Tijuana'), ('America/Toronto', 'America/Toronto'), ('America/Tortola', 'America/Tortola'), ('America/Vancouver', 'America/Vancouver'), ('America/Whitehorse', 'America/Whitehorse'), ('America/Winnipeg', 'America/Winnipeg'), ('America/Yakutat', 'America/Yakutat'), ('America/Yellowknife', 'America/Yellowknife'), ('Antarctica/Casey', 'Antarctica/Casey'), ('Antarctica/Davis', 'Antarctica/Davis'), ('Antarctica/DumontDUrville', 'Antarctica/DumontDUrville'), ('Antarctica/Macquarie', 'Antarctica/Macquarie'), ('Antarctica/Mawson', 'Antarctica/Mawson'), ('Antarctica/McMurdo', 'Antarctica/McMurdo'), ('Antarctica/Palmer', 'Antarctica/Palmer'), ('Antarctica/Rothera', 'Antarctica/Rothera'), ('Antarctica/Syowa', 'Antarctica/Syowa'), ('Antarctica/Troll', 'Antarctica/Troll'), ('Antarctica/Vostok', 'Antarctica/Vostok'), ('Arctic/Longyearbyen', 'Arctic/Longyearbyen'), ('Asia/Aden', 'Asia/Aden'), ('Asia/Almaty', 'Asia/Almaty'), ('Asia/Amman', 'Asia/Amman'), ('Asia/Anadyr', 'Asia/Anadyr'), ('Asia/Aqtau', 'Asia/Aqtau'), ('Asia/Aqtobe', 'Asia/Aqtobe'), ('Asia/Ashgabat', 'Asia/Ashgabat'), ('Asia/Atyrau', 'Asia/Atyrau'), ('Asia/Baghdad', 'Asia/Baghdad'), ('Asia/Bahrain', 'Asia/Bahrain'), ('Asia/Baku', 'Asia/Baku'), ('Asia/Bangkok', 'Asia/Bangkok'), ('Asia/Barnaul', 'Asia/Barnaul'), ('Asia/Beirut', 'Asia/Beirut'), ('Asia/Bishkek', 'Asia/Bishkek'), ('Asia/Brunei', 'Asia/Brunei'), ('Asia/Chita', 'Asia/Chita'), ('Asia/Choibalsan', 'Asia/Choibalsan'), ('Asia/Colombo', 'Asia/Colombo'), ('Asia/Damascus', 'Asia/Damascus'), ('Asia/Dhaka', 'Asia/Dhaka'), ('Asia/Dili', 'Asia/Dili'), ('Asia/Dubai', 'Asia/Dubai'), ('Asia/Dushanbe', 'Asia/Dushanbe'), ('Asia/Famagusta', 'Asia/Famagusta'), ('Asia/Gaza', 'Asia/Gaza'), ('Asia/Hebron', 'Asia/Hebron'), ('Asia/Ho_Chi_Minh', 'Asia/Ho Chi Minh'), ('Asia/Hong_Kong', 'Asia/Hong Kong'), ('Asia/Hovd', 'Asia/Hovd'), ('Asia/Irkutsk', 'Asia/Irkutsk'), ('Asia/Jakarta', 'Asia/Jakarta'), ('Asia/Jayapura', 'Asia/Jayapura'), ('Asia/Jerusalem', 'Asia/Jerusalem'), ('Asia/Kabul', 'Asia/Kabul'), ('Asia/Kamchatka', 'Asia/Kamchatka'), ('Asia/Karachi', 'Asia/Karachi'), ('Asia/Kathmandu', 'Asia/Kathmandu'), ('Asia/Khandyga', 'Asia/Khandyga'), ('Asia/Kolkata', 'Asia/Kolkata'), ('Asia/Krasnoyarsk', 'Asia/Krasnoyarsk'), ('Asia/Kuala_Lumpur', 'Asia/Kuala Lumpur'), ('Asia/Kuching', 'Asia/Kuching'), ('Asia/Kuwait', 'Asia/Kuwait'), ('Asia/Macau', 'Asia/Macau'), ('Asia/Magadan', 'Asia/Magadan'), ('Asia/Makassar', 'Asia/Makassar'), ('Asia/Manila', 'Asia/Manila'), ('Asia/Muscat', 'Asia/Muscat'), ('Asia/Nicosia', 'Asia/Nicosia'), ('Asia/Novokuznetsk', 'Asia/Novokuznetsk'), ('Asia/Novosibirsk', 'Asia/Novosibirsk'), ('Asia/Omsk', 'Asia/Omsk'), ('Asia/Oral', 'Asia/Oral'), ('Asia/Phnom_Penh', 'Asia/Phnom Penh'), ('Asia/Pontianak', 'Asia/Pontianak'), ('Asia/Pyongyang', 'Asia/Pyongyang'), ('Asia/Qatar', 'Asia/Qatar'), ('Asia/Qyzylorda', 'Asia/Qyzylorda'), ('Asia/Riyadh', 'Asia/Riyadh'), ('Asia/Sakhalin', 'Asia/Sakhalin'), ('Asia/Samarkand', 'Asia/Samarkand'), ('Asia/Seoul', 'Asia/Seoul'), ('Asia/Shanghai', 'Asia/Shanghai'), ('Asia/Singapore', 'Asia/Singapore'), ('Asia/Srednekolymsk', 'Asia/Srednekolymsk'), ('Asia/Taipei', 'Asia/Taipei'), ('Asia/Tashkent', 'Asia/Tashkent'), ('Asia/Tbilisi', 'Asia/Tbilisi'), ('Asia/Tehran', 'Asia/Tehran'), ('Asia/Thimphu', 'Asia/Thimphu'), ('Asia/Tokyo', 'Asia/Tokyo'), ('Asia/Tomsk', 'Asia/Tomsk'), ('Asia/Ulaanbaatar', 'Asia/Ulaanbaatar'), ('Asia/Urumqi', 'Asia/Urumqi'), ('Asia/Ust-Nera', 'Asia/Ust-Nera'), ('Asia/Vientiane', 'Asia/Vientiane'), ('Asia/Vladivostok', 'Asia/Vladivostok'), ('Asia/Yakutsk', 'Asia/Yakutsk'), ('Asia/Yangon', 'Asia/Yangon'), ('Asia/Yekaterinburg', 'Asia/Yekaterinburg'), ('Asia/Yerevan', 'Asia/Yerevan'), ('Atlantic/Azores', 'Atlantic/Azores'), ('Atlantic/Bermuda', 'Atlantic/Bermuda'), ('Atlantic/Canary', 'Atlantic/Canary'), ('Atlantic/Cape_Verde', 'Atlantic/Cape Verde'), ('Atlantic/Faroe', 'Atlantic/Faroe'), ('Atlantic/Madeira', 'Atlantic/Madeira'), ('Atlantic/Reykjavik', 'Atlantic/Reykjavik'), ('Atlantic/South_Georgia', 'Atlantic/South Georgia'), ('Atlantic/St_Helena', 'Atlantic/St Helena'), ('Atlantic/Stanley', 'Atlantic/Stanley'), ('Australia/Adelaide', 'Australia/Adelaide'), ('Australia/Brisbane', 'Australia/Brisbane'), ('Australia/Broken_Hill', 'Australia/Broken Hill'), ('Australia/Currie', 'Australia/Currie'), ('Australia/Darwin', 'Australia/Darwin'), ('Australia/Eucla', 'Australia/Eucla'), ('Australia/Hobart', 'Australia/Hobart'), ('Australia/Lindeman', 'Australia/Lindeman'), ('Australia/Lord_Howe', 'Australia/Lord Howe'), ('Australia/Melbourne', 'Australia/Melbourne'), ('Australia/Perth', 'Australia/Perth'), ('Australia/Sydney', 'Australia/Sydney'), ('Canada/Atlantic', 'Canada/Atlantic'), ('Canada/Central', 'Canada/Central'), ('Canada/Eastern', 'Canada/Eastern'), ('Canada/Mountain', 'Canada/Mountain'), ('Canada/Newfoundland', 'Canada/Newfoundland'), ('Canada/Pacific', 'Canada/Pacific'), ('Europe/Amsterdam', 'Europe/Amsterdam'), ('Europe/Andorra', 'Europe/Andorra'), ('Europe/Astrakhan', 'Europe/Astrakhan'), ('Europe/Athens', 'Europe/Athens'), ('Europe/Belgrade', 'Europe/Belgrade'), ('Europe/Berlin', 'Europe/Berlin'), ('Europe/Bratislava', 'Europe/Bratislava'), ('Europe/Brussels', 'Europe/Brussels'), ('Europe/Bucharest', 'Europe/Bucharest'), ('Europe/Budapest', 'Europe/Budapest'), ('Europe/Busingen', 'Europe/Busingen'), ('Europe/Chisinau', 'Europe/Chisinau'), ('Europe/Copenhagen', 'Europe/Copenhagen'), ('Europe/Dublin', 'Europe/Dublin'), ('Europe/Gibraltar', 'Europe/Gibraltar'), ('Europe/Guernsey', 'Europe/Guernsey'), ('Europe/Helsinki', 'Europe/Helsinki'), ('Europe/Isle_of_Man', 'Europe/Isle of Man'), ('Europe/Istanbul', 'Europe/Istanbul'), ('Europe/Jersey', 'Europe/Jersey'), ('Europe/Kaliningrad', 'Europe/Kaliningrad'), ('Europe/Kiev', 'Europe/Kiev'), ('Europe/Kirov', 'Europe/Kirov'), ('Europe/Lisbon', 'Europe/Lisbon'), ('Europe/Ljubljana', 'Europe/Ljubljana'), ('Europe/London', 'Europe/London'), ('Europe/Luxembourg', 'Europe/Luxembourg'), ('Europe/Madrid', 'Europe/Madrid'), ('Europe/Malta', 'Europe/Malta'), ('Europe/Mariehamn', 'Europe/Mariehamn'), ('Europe/Minsk', 'Europe/Minsk'), ('Europe/Monaco', 'Europe/Monaco'), ('Europe/Moscow', 'Europe/Moscow'), ('Europe/Oslo', 'Europe/Oslo'), ('Europe/Paris', 'Europe/Paris'), ('Europe/Podgorica', 'Europe/Podgorica'), ('Europe/Prague', 'Europe/Prague'), ('Europe/Riga', 'Europe/Riga'), ('Europe/Rome', 'Europe/Rome'), ('Europe/Samara', 'Europe/Samara'), ('Europe/San_Marino', 'Europe/San Marino'), ('Europe/Sarajevo', 'Europe/Sarajevo'), ('Europe/Saratov', 'Europe/Saratov'), ('Europe/Simferopol', 'Europe/Simferopol'), ('Europe/Skopje', 'Europe/Skopje'), ('Europe/Sofia', 'Europe/Sofia'), ('Europe/Stockholm', 'Europe/Stockholm'), ('Europe/Tallinn', 'Europe/Tallinn'), ('Europe/Tirane', 'Europe/Tirane'), ('Europe/Ulyanovsk', 'Europe/Ulyanovsk'), ('Europe/Uzhgorod', 'Europe/Uzhgorod'), ('Europe/Vaduz', 'Europe/Vaduz'), ('Europe/Vatican', 'Europe/Vatican'), ('Europe/Vienna', 'Europe/Vienna'), ('Europe/Vilnius', 'Europe/Vilnius'), ('Europe/Volgograd', 'Europe/Volgograd'), ('Europe/Warsaw', 'Europe/Warsaw'), ('Europe/Zagreb', 'Europe/Zagreb'), ('Europe/Zaporozhye', 'Europe/Zaporozhye'), ('Europe/Zurich', 'Europe/Zurich'), ('GMT', 'GMT'), ('Indian/Antananarivo', 'Indian/Antananarivo'), ('Indian/Chagos', 'Indian/Chagos'), ('Indian/Christmas', 'Indian/Christmas'), ('Indian/Cocos', 'Indian/Cocos'), ('Indian/Comoro', 'Indian/Comoro'), ('Indian/Kerguelen', 'Indian/Kerguelen'), ('Indian/Mahe', 'Indian/Mahe'), ('Indian/Maldives', 'Indian/Maldives'), ('Indian/Mauritius', 'Indian/Mauritius'), ('Indian/Mayotte', 'Indian/Mayotte'), ('Indian/Reunion', 'Indian/Reunion'), ('Pacific/Apia', 'Pacific/Apia'), ('Pacific/Auckland', 'Pacific/Auckland'), ('Pacific/Bougainville', 'Pacific/Bougainville'), ('Pacific/Chatham', 'Pacific/Chatham'), ('Pacific/Chuuk', 'Pacific/Chuuk'), ('Pacific/Easter', 'Pacific/Easter'), ('Pacific/Efate', 'Pacific/Efate'), ('Pacific/Enderbury', 'Pacific/Enderbury'), ('Pacific/Fakaofo', 'Pacific/Fakaofo'), ('Pacific/Fiji', 'Pacific/Fiji'), ('Pacific/Funafuti', 'Pacific/Funafuti'), ('Pacific/Galapagos', 'Pacific/Galapagos'), ('Pacific/Gambier', 'Pacific/Gambier'), ('Pacific/Guadalcanal', 'Pacific/Guadalcanal'), ('Pacific/Guam', 'Pacific/Guam'), ('Pacific/Honolulu', 'Pacific/Honolulu'), ('Pacific/Kiritimati', 'Pacific/Kiritimati'), ('Pacific/Kosrae', 'Pacific/Kosrae'), ('Pacific/Kwajalein', 'Pacific/Kwajalein'), ('Pacific/Majuro', 'Pacific/Majuro'), ('Pacific/Marquesas', 'Pacific/Marquesas'), ('Pacific/Midway', 'Pacific/Midway'), ('Pacific/Nauru', 'Pacific/Nauru'), ('Pacific/Niue', 'Pacific/Niue'), ('Pacific/Norfolk', 'Pacific/Norfolk'), ('Pacific/Noumea', 'Pacific/Noumea'), ('Pacific/Pago_Pago', 'Pacific/Pago Pago'), ('Pacific/Palau', 'Pacific/Palau'), ('Pacific/Pitcairn', 'Pacific/Pitcairn'), ('Pacific/Pohnpei', 'Pacific/Pohnpei'), ('Pacific/Port_Moresby', 'Pacific/Port Moresby'), ('Pacific/Rarotonga', 'Pacific/Rarotonga'), ('Pacific/Saipan', 'Pacific/Saipan'), ('Pacific/Tahiti', 'Pacific/Tahiti'), ('Pacific/Tarawa', 'Pacific/Tarawa'), ('Pacific/Tongatapu', 'Pacific/Tongatapu'), ('Pacific/Wake', 'Pacific/Wake'), ('Pacific/Wallis', 'Pacific/Wallis'), ('US/Alaska', 'US/Alaska'), ('US/Arizona', 'US/Arizona'), ('US/Central', 'US/Central'), ('US/Eastern', 'US/Eastern'), ('US/Hawaii', 'US/Hawaii'), ('US/Mountain', 'US/Mountain'), ('US/Pacific', 'US/Pacific'), ('UTC', 'UTC')], default='UTC', max_length=40)), ('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='settings', to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name_plural': 'Settings', }, ), migrations.AddField( model_name='harvest', name='hive', field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='harvests', to='core.Hive'), ), migrations.AddField( model_name='file', name='hive', field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='files', to='core.Hive'), ), ]
class Migration(migrations.Migration): dependencies = [ ('auth', '0012_alter_user_first_name_max_length'), ('quiz', '0003_auto_20200429_0408'), ] operations = [ migrations.CreateModel( name='Guess', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ], ), migrations.CreateModel( name='TakenQuiz', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('score', models.IntegerField()), ('percentage', models.FloatField()), ('quiz', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='taken_quizzes', to='quiz.quiz')), ], ), migrations.CreateModel( name='Taker', fields=[ ('user', models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, primary_key=True, serialize=False, to='auth.user')), ('score', models.IntegerField(default=0)), ('quizzes', models.ManyToManyField(through='quiz.TakenQuiz', to='quiz.Quiz')), ], ), migrations.DeleteModel(name='QuizTaker', ), migrations.RenameField( model_name='answer', old_name='answer_text', new_name='text', ), migrations.RenameField( model_name='question', old_name='question_text', new_name='text', ), migrations.AlterField( model_name='answer', name='is_correct', field=models.BooleanField(default=False, verbose_name='Correct answer'), ), migrations.AlterField( model_name='answer', name='question', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='answers', to='quiz.question'), ), migrations.AlterField( model_name='question', name='quiz', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='questions', to='quiz.quiz'), ), migrations.DeleteModel(name='UserAnswer', ), migrations.AddField( model_name='takenquiz', name='user', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='taken_quizzes', to='quiz.taker'), ), migrations.AddField( model_name='guess', name='answer', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='+', to='quiz.answer'), ), migrations.AddField( model_name='guess', name='taker', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='quiz_answers', to='quiz.taker'), ), ]
class One2OneRelatingModel(PolymorphicModel): one2one = models.OneToOneField(Model2A, on_delete=models.CASCADE) field1 = models.CharField(max_length=10)
class Migration(migrations.Migration): dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ('historias', '0003_auto_20170801_1706'), ] operations = [ migrations.CreateModel( name='Empleado', fields=[ ('id', models.AutoField(auto_created=True, verbose_name='ID', serialize=False, primary_key=True)), ('nombre', models.CharField(verbose_name='Nombre', max_length=200)), ('firma', models.FileField(blank=True, null=True, upload_to=mysite.apps.examenes.models.ruta_imagen_empleado)), ('usuario', models.OneToOneField(to=settings.AUTH_USER_MODEL, verbose_name='Usuario', related_name='empleado_examenes')), ], options={ 'permissions': (('audiometra', 'Es usuario de Audiometría'), ('visiometra', 'Es usuario de Visiometría'), ('optometra', 'Es usuario de Optometría')), }, ), migrations.CreateModel( name='Visiometria', fields=[ ('id', models.AutoField(auto_created=True, verbose_name='ID', serialize=False, primary_key=True)), ('lentes_correctivos', models.NullBooleanField(verbose_name='Usa Lentes Correctivos')), ('hace_cuanto', models.CharField(verbose_name='Hace cuanto tiempo', blank=True, null=True, max_length=100)), ('cirugia', models.CharField(verbose_name='Cirugía', blank=True, null=True, max_length=50)), ('trauma_ocular', models.CharField(verbose_name='Trauma Ocular', blank=True, null=True, max_length=50)), ('pterigio', models.CharField(verbose_name='Pterigio', blank=True, null=True, max_length=50)), ('colores', models.CharField(verbose_name='Colores', blank=True, null=True, max_length=50)), ('vision_lejana_od', models.CharField(verbose_name='Ojo Derecho', blank=True, null=True, max_length=50)), ('vision_lejana_oi', models.CharField(verbose_name='Ojo Izquierdo', blank=True, null=True, max_length=50)), ('vision_lejana_ao', models.CharField(verbose_name='Ambos ojos', blank=True, null=True, max_length=50)), ('vision_cercana_od', models.CharField(verbose_name='Ojo Derecho', blank=True, null=True, max_length=50)), ('vision_cercana_oi', models.CharField(verbose_name='Ojo Izquierdo', blank=True, null=True, max_length=50)), ('vision_cercana_ao', models.CharField(verbose_name='Ambos ojos', blank=True, null=True, max_length=50)), ('av_od', models.CharField(verbose_name='Ojo Derecho', blank=True, null=True, max_length=50)), ('av_oi', models.CharField(verbose_name='Ojo Izquierdo', blank=True, null=True, max_length=50)), ('av_ao', models.CharField(verbose_name='Ambos ojos', blank=True, null=True, max_length=50)), ('esf_od', models.CharField(verbose_name='ESF', blank=True, null=True, max_length=50)), ('cil_od', models.CharField(verbose_name='CIL', blank=True, null=True, max_length=50)), ('eje_od', models.CharField(verbose_name='EJE', blank=True, null=True, max_length=50)), ('add_od', models.CharField(verbose_name='ADD', blank=True, null=True, max_length=50)), ('dp_od', models.CharField(verbose_name='D.P', blank=True, null=True, max_length=50)), ('np_od', models.CharField(verbose_name='N.P', blank=True, null=True, max_length=50)), ('alt_od', models.CharField(verbose_name='ALT', blank=True, null=True, max_length=50)), ('prisma_od', models.CharField(verbose_name='PRISMA', blank=True, null=True, max_length=50)), ('esf_oi', models.CharField(verbose_name='ESF', blank=True, null=True, max_length=50)), ('cil_oi', models.CharField(verbose_name='CIL', blank=True, null=True, max_length=50)), ('eje_oi', models.CharField(verbose_name='EJE', blank=True, null=True, max_length=50)), ('add_oi', models.CharField(verbose_name='ADD', blank=True, null=True, max_length=50)), ('dp_oi', models.CharField(verbose_name='D.P', blank=True, null=True, max_length=50)), ('np_oi', models.CharField(verbose_name='N.P', blank=True, null=True, max_length=50)), ('alt_oi', models.CharField(verbose_name='ALT', blank=True, null=True, max_length=50)), ('prisma_oi', models.CharField(verbose_name='PRISMA', blank=True, null=True, max_length=50)), ('foria', models.CharField(verbose_name='Foria', blank=True, null=True, max_length=100)), ('campimetria', models.CharField(verbose_name='Campimetría', blank=True, null=True, max_length=100)), ('remitir_oftamologia', models.NullBooleanField(verbose_name='Remitir a oftamología')), ('recomendaciones', models.TextField(verbose_name='Recomendaciones', blank=True, null=True)), ('tipo', models.CharField(choices=[('VI', 'VISIOMETRIA'), ('OP', 'OPTOMETRIA')], max_length=2)), ('estado', models.CharField(choices=[('PE', 'PENDIENTE'), ('RE', 'RESULTADO EMITIDO')], max_length=2)), ('orden', models.OneToOneField(to='historias.orden', related_name='visiometria')), ('visiometra', models.ForeignKey(to='examenes.Empleado', related_name='visiometrias')), ], ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('contenttypes', '0002_remove_content_type_name'), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Course', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('catalog_number', models.CharField(max_length=20, verbose_name='Number')), ('title', models.CharField(max_length=256, verbose_name='Title')), ('description', models.CharField(blank=True, max_length=256, verbose_name='Description')), ('credits_earned', models.DecimalField(decimal_places=1, max_digits=2, verbose_name='Credits')), ('graduate', models.BooleanField(default=False, verbose_name='Graduate Level')), ], options={ 'ordering': ['major', 'catalog_number', 'title'], }, ), migrations.CreateModel( name='Interval', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('interval_amount', models.IntegerField(validators=[django.core.validators.MinValueValidator(1)], verbose_name='Interval Amount')), ('interval_type', models.CharField(choices=[('weeks', 'weeks'), ('days', 'days'), ('months', 'months'), ('minutes', 'minutes'), ('hours', 'hours'), ('seconds', 'seconds')], max_length=7, verbose_name='Interval Type')), ], ), migrations.CreateModel( name='Major', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('abbreviation', sis.models.UpperField(max_length=6, unique=True, verbose_name='Abbreviation')), ('title', models.CharField(max_length=256, verbose_name='Title')), ('description', models.CharField(blank=True, max_length=256, verbose_name='Description')), ], options={ 'ordering': ['abbreviation'], }, ), migrations.CreateModel( name='Professor', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('major', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='sis.major')), ], options={ 'ordering': ['profile__user__username'], }, ), migrations.CreateModel( name='Profile', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('role', models.CharField(choices=[('A', 'Admin'), ('P', 'Professor'), ('S', 'Student'), ('-', 'NO ACCESS')], default='-', max_length=1)), ('bio', models.CharField(blank=True, max_length=256)), ('demo_age', models.CharField(blank=True, choices=[('Under 18', 'Under 18'), ('18-21', '18-21'), ('22-25', '22-25'), ('26-30', '26-30'), ('31-40', '31-40'), ('41-54', '41-54'), ('55-64', '55-64'), ('65 or over', '65 or over'), ('Decline to State', 'Decline to State')], max_length=20, verbose_name='Age Group')), ('demo_race', models.CharField(blank=True, choices=[('White/Caucasian', 'White/Caucasian'), ('Native Hawaiian or Pacific Islander', 'Native Hawaiian or Pacific Islander'), ('Hispanic', 'Hispanic'), ('Black', 'Black'), ('American Indian/Alaska Native', 'American Indian/Alaska Native'), ('Decline to State', 'Decline to State')], max_length=40)), ('demo_gender', models.CharField(blank=True, choices=[('Male', 'Male'), ('Female', 'Female'), ('Trans', 'Trans'), ('Non-Binary', 'Non-Binary'), ('Other', 'Other'), ('Decline to State', 'Decline to State')], max_length=20)), ('demo_employment', models.CharField(blank=True, choices=[('Full Time Student', 'Full Time Student'), ('Part Time', 'Part Time'), ('Full Time', 'Full Time'), ('Unemployed/Seeking', 'Unemployed/Seeking'), ('Retired', 'Retired'), ('Decline to State', 'Decline to State')], max_length=20)), ('demo_income', models.CharField(blank=True, choices=[('Under $40K', 'Under $40K'), ('$40K-$80K', '$40K-$80K'), ('$80K-$150K', '$80K-$150K'), ('$150K+', '$150K+'), ('Decline to State', 'Decline to State')], max_length=20)), ('demo_education', models.CharField(blank=True, choices=[('partial High School', 'partial High School'), ('High School Diploma', 'High School Diploma'), ('college without degree awarded', 'college without degree awarded'), ('Associates', 'Associates'), ('College Bachelors', 'College Bachelors'), ('Masters', 'Masters'), ('Doctorate', 'Doctorate'), ('Decline to State', 'Decline to State')], max_length=35)), ('demo_orientation', models.CharField(blank=True, choices=[('Heterosexual', 'Heterosexual'), ('Lesbian/Gay', 'Lesbian/Gay'), ('Bisexual', 'Bisexual'), ('Other', 'Other'), ('Decline to State', 'Decline to State')], max_length=20)), ('demo_marital', models.CharField(blank=True, choices=[('Single', 'Single'), ('Married', 'Married'), ('Divorced', 'Divorced'), ('Widowed', 'Widowed'), ('Decline to State', 'Decline to State')], max_length=20)), ('demo_disability', models.CharField(blank=True, choices=[('None', 'None'), ('Physical', 'Physical'), ('Emotional', 'Emotional'), ('Mental', 'Mental'), ('Other', 'Other'), ('Decline to State', 'Decline to State')], max_length=20)), ('demo_veteran', models.CharField(blank=True, choices=[('None', 'None'), ('Veteran', 'Veteran'), ('Decline to State', 'Decline to State')], max_length=20)), ('demo_citizenship', models.CharField(blank=True, choices=[('United States', 'United States'), ('US Permanent Resident', 'US Permanent Resident'), ('Visa', 'Visa'), ('Other', 'Other'), ('Decline to State', 'Decline to State')], max_length=25)), ('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'ordering': ['user__username'], }, ), migrations.CreateModel( name='ReferenceItem', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=256, verbose_name='Title')), ('description', models.CharField(blank=True, max_length=256, null=True, verbose_name='Description')), ('link', models.CharField(blank=True, max_length=256, null=True, verbose_name='Link')), ('edition', models.CharField(blank=True, max_length=256, null=True, verbose_name='Edition')), ('type', models.CharField(choices=[('req', 'Required'), ('opt', 'Optional'), ('rec', 'Recommended'), ('syl', 'Syllabus'), ('ass', 'Assignment')], default='req', max_length=3, verbose_name='Type')), ('isbn', isbn_field.fields.ISBNField(blank=True, max_length=28, validators=[isbn_field.validators.ISBNValidator], verbose_name='ISBN')), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='sis.course')), ('professor', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='sis.professor')), ], options={ 'unique_together': {('course', 'professor', 'title')}, }, ), migrations.CreateModel( name='Section', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('number', models.IntegerField(default=1, validators=[django.core.validators.MinValueValidator(1)], verbose_name='Section Number')), ('capacity', models.IntegerField(default=0, validators=[django.core.validators.MinValueValidator(1)], verbose_name='Capacity')), ('location', models.CharField(max_length=256, verbose_name='Location')), ('hours', models.CharField(max_length=256, verbose_name='Hours')), ('status', models.CharField(choices=[('Closed', 'Closed'), ('Open', 'Open'), ('In Progress', 'In Progress'), ('Grading', 'Grading'), ('Graded', 'Graded'), ('Cancelled', 'Cancelled')], default='Closed', max_length=20, verbose_name='Section Status')), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='sis.course')), ('professor', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='sis.professor')), ], options={ 'ordering': ['semester', 'course', 'number'], }, ), migrations.CreateModel( name='Semester', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('date_registration_opens', models.DateField(verbose_name='Registration Opens')), ('date_registration_closes', models.DateField(help_text='Must be on or after Registration Opens', verbose_name='Registration Closes')), ('date_started', models.DateField(help_text='Must on or after Registration Opens', verbose_name='Classes Start')), ('date_last_drop', models.DateField(help_text='Must be on or after Classes Start and before Classes End', verbose_name='Last Drop')), ('date_ended', models.DateField(help_text='Must be on or after Classes Start', verbose_name='Classes End')), ('date_finalized', models.DateField(help_text='Must be on or after Classes End', verbose_name='Grades Finalized')), ('session', models.CharField(choices=[('FA', 'Fall'), ('WI', 'Winter'), ('SP', 'Spring'), ('SU', 'Summer')], default='FA', max_length=6, verbose_name='semester')), ('year', models.IntegerField(default=2000, help_text='School Year', validators=[django.core.validators.MinValueValidator(1900), django.core.validators.MaxValueValidator(2300)], verbose_name='year')), ], options={ 'ordering': ['date_started'], 'unique_together': {('session', 'year')}, }, ), migrations.CreateModel( name='SemesterStudent', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('grade_points', models.FloatField(null=True, verbose_name='Grade Points')), ('credits_attempted', models.DecimalField(decimal_places=1, default=Decimal('0.0'), max_digits=3, verbose_name='Attempted')), ('credits_earned', models.DecimalField(decimal_places=1, max_digits=3, null=True, verbose_name='Earned')), ('semester', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='sis.semester')), ], options={ 'ordering': ['semester', 'student'], }, ), migrations.CreateModel( name='Tasks', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('task_id', models.IntegerField()), ('task_type', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='contenttypes.contenttype')), ], ), migrations.CreateModel( name='Student', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('grad_student', models.BooleanField(default=False, verbose_name='Graduate Student')), ('gpa', models.FloatField(null=True, verbose_name='GPA')), ('credits_earned', models.DecimalField(decimal_places=1, max_digits=4, null=True, verbose_name='Earned')), ('major', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='sis.major')), ('profile', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='sis.profile')), ('semesters', models.ManyToManyField(related_name='semester_students', through='sis.SemesterStudent', to='sis.Semester')), ], options={ 'ordering': ['profile__user__username'], }, ), migrations.AddField( model_name='semesterstudent', name='student', field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='sis.student'), ), migrations.CreateModel( name='SectionStudent', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('grade', models.SmallIntegerField(blank=True, choices=[(4, 'A'), (3, 'B'), (2, 'C'), (1, 'D'), (0, 'F')], default=None, null=True)), ('status', models.CharField(choices=[('Registered', 'Registered'), ('In Progress', 'In Progress'), ('Done', 'Done'), ('Graded', 'Graded'), ('Drop Requested', 'Drop Requested'), ('Dropped', 'Dropped')], default='Registered', max_length=20, verbose_name='Student Status')), ('section', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='sis.section')), ('student', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='sis.student')), ], options={ 'ordering': ['section', 'student'], 'unique_together': {('section', 'student')}, }, ), migrations.AddField( model_name='section', name='semester', field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='sis.semester'), ), migrations.AddField( model_name='section', name='students', field=models.ManyToManyField(related_name='section_students', through='sis.SectionStudent', to='sis.Student'), ), migrations.AddField( model_name='professor', name='profile', field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='sis.profile'), ), migrations.CreateModel( name='Message', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('message_type', models.CharField(choices=[('generic', 'generic'), ('probation', 'probation'), ('droprequest', 'droprequest'), ('majorchange', 'majorchange'), ('sectionfilling', 'sectionfilling'), ('sectionfull', 'sectionfull'), ('sectionadded', 'sectionadded'), ('reqtranscript', 'reqtranscript'), ('transcript', 'transcript'), ('reply', 'reply')], default='generic', max_length=15)), ('time_sent', models.DateTimeField(editable=False, verbose_name='Sent at')), ('time_read', models.DateTimeField(blank=True, null=True, verbose_name='Read at')), ('time_archived', models.DateTimeField(blank=True, null=True, verbose_name='Archived at')), ('time_sender_archived', models.DateTimeField(blank=True, null=True, verbose_name='Sender Archived at')), ('time_handled', models.DateTimeField(blank=True, null=True, verbose_name='Handled at')), ('subject', models.CharField(max_length=256)), ('body', models.TextField(blank=True, null=True)), ('high_priority', models.BooleanField(default=False)), ('support_data', models.JSONField(default=dict)), ('in_response_to', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='sis.message')), ('recipient', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='sent_to', to='sis.profile', verbose_name='Recipient')), ('sender', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='sent_by', to='sis.profile', verbose_name='Sender')), ], options={ 'ordering': ['time_sent'], }, ), migrations.AddField( model_name='major', name='contact', field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='sis.profile'), ), migrations.AddField( model_name='major', name='courses_required', field=models.ManyToManyField(blank=True, related_name='required_by', to='sis.Course'), ), migrations.AddField( model_name='major', name='professors', field=models.ManyToManyField(blank=True, related_name='prof', to='sis.Professor'), ), migrations.CreateModel( name='CoursePrerequisite', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='a_course', to='sis.course')), ('prerequisite', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='a_prerequisite', to='sis.course')), ], options={ 'ordering': ['course', 'prerequisite'], 'unique_together': {('course', 'prerequisite')}, }, ), migrations.AddField( model_name='course', name='major', field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='sis.major'), ), migrations.AddField( model_name='course', name='prereqs', field=models.ManyToManyField(through='sis.CoursePrerequisite', to='sis.Course'), ), migrations.CreateModel( name='AcademicProbationTask', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('date', models.DateField(blank=True, default=None, null=True, verbose_name='Date')), ('frequency_type', models.CharField(choices=[('immediate', 'immediate'), ('interval', 'interval'), ('date', 'date')], max_length=9, verbose_name='Frequency Type')), ('title', models.CharField(blank=True, max_length=30, verbose_name='Task Title')), ('active', models.BooleanField(default=True, verbose_name='Active')), ('description', models.CharField(max_length=256, verbose_name='Description')), ('interval', models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='sis.interval')), ], options={ 'abstract': False, }, ), migrations.AlterUniqueTogether( name='semesterstudent', unique_together={('semester', 'student')}, ), migrations.CreateModel( name='SectionReferenceItem', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('index', models.IntegerField(default=1, verbose_name='#')), ('item', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='sis.referenceitem')), ('section', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='sis.section')), ], options={ 'unique_together': {('section', 'item'), ('section', 'index')}, }, ), migrations.AlterUniqueTogether( name='section', unique_together={('course', 'semester', 'number')}, ), migrations.AlterUniqueTogether( name='course', unique_together={('major', 'catalog_number')}, ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Customer', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=200, null=True)), ('email', models.CharField(max_length=200, null=True)), ('user', models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='Order', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('date_ordered', models.DateTimeField(auto_now_add=True)), ('complete', models.BooleanField(default=False, null=True)), ('transaction_id', models.CharField(max_length=200, null=True)), ('customer', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='store.Customer')), ], ), migrations.CreateModel( name='Product', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=200, null=True)), ('price', models.FloatField()), ('digital', models.BooleanField(default=False, null=True)), ], ), migrations.CreateModel( name='ShippingAddress', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('address', models.CharField(max_length=200)), ('city', models.CharField(max_length=200)), ('state', models.CharField(max_length=200)), ('zipcode', models.CharField(max_length=200)), ('date_added', models.CharField(max_length=200)), ('customer', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='store.Customer')), ('order', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='store.Order')), ], ), migrations.CreateModel( name='OrderItem', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('quantity', models.IntegerField(blank=True, default=0, null=True)), ('date_added', models.DateTimeField(auto_now_add=True)), ('order', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='store.Order')), ('product', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='store.Product')), ], ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('taggit', '0003_taggeditem_add_unique_index'), ('wagtailcore', '0041_group_collection_permissions_verbose_name_plural'), ('wagtailimages', '0001_squashed_0021'), ] operations = [ migrations.CreateModel( name='HomePage', fields=[ ('page_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='wagtailcore.Page')), ('banner_title', wagtail.core.fields.RichTextField(blank=True)), ('aboutme_text', wagtail.core.fields.RichTextField(blank=True)), ('aboutme_photo', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='wagtailimages.Image')), ('banner_avatar', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='wagtailimages.Image')), ], options={ 'abstract': False, }, bases=('wagtailcore.page',), ), migrations.CreateModel( name='PortfolioItem', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('sort_order', models.IntegerField(blank=True, editable=False, null=True)), ('item_title', models.CharField(blank=True, max_length=200, null=True)), ('item_description', wagtail.core.fields.RichTextField(blank=True)), ('item_link', models.URLField()), ('item_sourcecode_link', models.URLField()), ('item_blogpost_link', models.URLField()), ('item_image', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='wagtailimages.Image')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='PortfolioItemTag', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('content_object', modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, to='frontend.PortfolioItem')), ('tag', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='frontend_portfolioitemtag_items', to='taggit.Tag')), ], options={ 'abstract': False, }, ), migrations.AddField( model_name='portfolioitem', name='item_tags', field=modelcluster.contrib.taggit.ClusterTaggableManager(blank=True, help_text='A comma-separated list of tags.', through='frontend.PortfolioItemTag', to='taggit.Tag', verbose_name='Tags'), ), migrations.AddField( model_name='portfolioitem', name='page', field=modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='portfolio_items', to='frontend.HomePage'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Employee', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('role', models.CharField(choices=[('DEV', 'Developer'), ('HED', 'Head')], max_length=3)), ('position', models.CharField(choices=[ ('TRA', 'Trainee'), ('JUN', 'Junior'), ('MID', 'Middle'), ('SEN', 'Senior') ], max_length=3)), ('user', models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'ordering': ['user'], }, ), migrations.CreateModel( name='Reviewers', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('group', models.CharField(choices=[('HED', 'Head'), ('COL', 'Colleague'), ('MNT', 'Mentor'), ('MTE', 'Mentee')], max_length=3)), ('employee', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='review.Employee')), ], ), migrations.CreateModel( name='Reviews', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('date', models.DateField()), ('reviewee', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='review.Employee')), ('reviewers', models.ManyToManyField(to='review.Reviewers')), ], options={ 'ordering': ['date'], }, ), ]
class RegisteredDrug(models.Model): """ Stores list of products/drugs registered in offical drug office database """ name = models.CharField(max_length=255, blank=True, null=True) # name: Product Name reg_no = models.CharField(unique=True, max_length=255, blank=True, null=True) # reg_no: equivalent to "permit_no" in drug database itemid = models.PositiveIntegerField(blank=True, null=True, unique=True) item = models.OneToOneField( 'inventory.Item', on_delete=models.PROTECT, null=True, blank=True, ) ingredients = models.ManyToManyField( 'Ingredient', related_name='registereddrugs', ) company = models.ForeignKey( 'Company', on_delete=models.PROTECT, ) date_created = models.DateTimeField(auto_now_add=True) last_updated = models.DateTimeField(auto_now=True) last_synced = models.DateTimeField(auto_now=True) is_active = models.BooleanField(default=True) class Meta: ordering = ['reg_no'] verbose_name = 'Registered drug' @property def ingredients_list(self): if self.ingredients: return ", ".join([i.name for i in self.ingredients.all()]) else: return '' @property def gen_dosage(self): """ Tries to get dosage from product name Patterns: - Oral meds: [Number] [MG] [Number] [MCG] - Syrup meds: [Number][MG]/[Number][ML] - Injections: [Number][MCG/ML] - Inhaled: [Number][MCG/SPRAY] - External: [Number]% """ pattern = re.compile( r'(\d*\.?\d*\s?(MC?G)\/?(\d*\.?\d*)?(MG|MCG|ML|SPRAY)?)|(\d*\.?\d*\%)/g', re.IGNORECASE) dose_search = pattern.search(self.name) if dose_search: return dose_search.group() else: return "" @property def gen_generic(self): """ Generate generic name from ingredients For drugs with <= 3 ingredients, use first word of ingredient For drugs with >3 ingredients, return "COMBO" """ first_words = [] if len(self.ingredients.all()) <= 5: for ingr in self.ingredients.all(): first_words.append(ingr.name.split()[0]) return " / ".join(first_words) else: for ingr in self.ingredients.all(): first_words.append(ingr.name.split()[0]) return "COMBO: " + " / ".join(first_words[:5]) + "..." def __str__(self): return f"{self.reg_no} | {self.name}"
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0011_update_proxy_permissions'), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='CronLog', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('description', models.CharField(default='cron log', max_length=256)), ('cron_time', models.DateTimeField(default=django.utils.timezone.now)), ], ), migrations.CreateModel( name='Document', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=128)), ('description', models.TextField()), ('body', models.TextField()), ('policyItems', models.TextField(default=None)), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('groups', models.ManyToManyField(null=True, to='auth.Group')), ], ), migrations.CreateModel( name='EmailPattern', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('pattern', models.CharField(max_length=128)), ], ), migrations.CreateModel( name='GoogleAccount', fields=[ ('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, primary_key=True, serialize=False, to=settings.AUTH_USER_MODEL)), ('gavatar', models.CharField(default=None, max_length=256, null=True)), ], ), migrations.CreateModel( name='PolicyItem', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('docTitle', models.CharField(max_length=256)), ('itemText', models.TextField()), ('importance', models.PositiveSmallIntegerField(default=1)), ], ), migrations.CreateModel( name='Question', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('policyId', models.CharField(max_length=256)), ('question', markdownx.models.MarkdownxField()), ('answer', markdownx.models.MarkdownxField()), ('showed_at', models.DateTimeField(default=None, null=True)), ], ), migrations.CreateModel( name='Repetition', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('userrep_id', models.PositiveIntegerField(default=1)), ('created_at', models.DateTimeField(default=django.utils.timezone.now)), ('finished', models.BooleanField(default=False)), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'unique_together': {('user', 'userrep_id')}, }, ), migrations.CreateModel( name='PolicyItemQuestion', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('policy', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='backend.PolicyItem')), ('questions', models.ForeignKey(blank=True, default=1, null=True, on_delete=django.db.models.deletion.SET_DEFAULT, to='backend.Question')), ], ), migrations.CreateModel( name='InitialComplete', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('status', models.BooleanField(default=False)), ('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='UserHandbook', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('finished', models.BooleanField(default=False)), ('first', models.BooleanField(default=False)), ('document', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='backend.Document')), ('policy', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='backend.PolicyItem')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'unique_together': {('user', 'document', 'policy')}, }, ), migrations.CreateModel( name='RepetitionItem', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('itemNo', models.PositiveSmallIntegerField(default=1)), ('answer', models.IntegerField(default=-1)), ('answered_at', models.DateTimeField(default=None, null=True)), ('policy', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='backend.PolicyItem')), ('question', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='backend.Question')), ('repetition', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='backend.Repetition')), ], options={ 'unique_together': {('repetition', 'policy')}, }, ), ]
class Migration(migrations.Migration): dependencies = [ ('product', '0001_initial'), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Order', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, verbose_name='ID', serialize=False)), ('placed_time', models.DateTimeField(auto_now_add=True)), ], options={ }, bases=(models.Model,), ), migrations.CreateModel( name='Status', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, verbose_name='ID', serialize=False)), ('type_s', models.CharField(max_length=20)), ], options={ }, bases=(models.Model,), ), migrations.CreateModel( name='UserProfile', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, verbose_name='ID', serialize=False)), ('profile_pic', models.ImageField(upload_to='profile_pics/', blank=True)), ('phone_number', models.CharField(blank=True, max_length=10)), ('address', models.CharField(max_length=50)), ('cart_info', models.ManyToManyField(to='product.Entry')), ('city', models.ForeignKey(to='product.City')), ('user', models.OneToOneField(to=settings.AUTH_USER_MODEL)), ], options={ 'db_table': 'profile', }, bases=(models.Model,), ), migrations.AddField( model_name='order', name='delivery_status', field=models.ForeignKey(to='User.Status'), preserve_default=True, ), migrations.AddField( model_name='order', name='product', field=models.ForeignKey(to='product.Entry'), preserve_default=True, ), migrations.AddField( model_name='order', name='user', field=models.ForeignKey(to='User.UserProfile'), preserve_default=True, ), ]
class Migration(migrations.Migration): dependencies = [ ('s2410', '0002_auto_20181119_1143'), ] operations = [ migrations.AlterField( model_name='s2410homologtc', name='criado_em', field=models.DateTimeField(blank=True), ), migrations.AlterField( model_name='s2410homologtc', name='dthomol', field=models.DateField(), ), migrations.AlterField( model_name='s2410homologtc', name='nratolegal', field=models.CharField(max_length=20), ), migrations.AlterField( model_name='s2410homologtc', name='s2410_evtcdbenin', field=models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, related_name='s2410homologtc_s2410_evtcdbenin', to='esocial.s2410evtCdBenIn'), ), migrations.AlterField( model_name='s2410infopenmorte', name='criado_em', field=models.DateTimeField(blank=True), ), migrations.AlterField( model_name='s2410infopenmorte', name='s2410_evtcdbenin', field=models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, related_name='s2410infopenmorte_s2410_evtcdbenin', to='esocial.s2410evtCdBenIn'), ), migrations.AlterField( model_name='s2410infopenmorte', name='tppenmorte', field=models.IntegerField( choices=[(1, '1 - Vital\xedcia'), (2, '2 - Tempor\xe1ria')]), ), migrations.AlterField( model_name='s2410instpenmorte', name='cpfinst', field=models.CharField(max_length=11), ), migrations.AlterField( model_name='s2410instpenmorte', name='criado_em', field=models.DateTimeField(blank=True), ), migrations.AlterField( model_name='s2410instpenmorte', name='dtinst', field=models.DateField(), ), migrations.AlterField( model_name='s2410instpenmorte', name='intaposentado', field=models.CharField(choices=[(b'N', 'N - N\xe3o'), (b'S', 'S - Sim')], max_length=1), ), migrations.AlterField( model_name='s2410instpenmorte', name='s2410_infopenmorte', field=models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, related_name='s2410instpenmorte_s2410_infopenmorte', to='s2410.s2410infoPenMorte'), ), ]
class User_Details(models.Model): user = models.OneToOneField(User,on_delete=models.CASCADE,related_name='user_details') image = models.ImageField(upload_to='img/profile/',default='img/profile/default.jpg')
class Schedule(models.Model): study_id = models.OneToOneField(Subjects, to_field='study_id', db_column='study_id', related_name='schedule_study_id', on_delete=models.PROTECT) cohort = models.IntegerField() wk1_d1_survey_1 = models.OneToOneField('survey.SurveyLinks', db_column='wk1_d1_survey_1', related_name='wk1_d1_survey_1', on_delete=models.PROTECT) wk1_d1_survey_2 = models.OneToOneField('survey.SurveyLinks', db_column='wk1_d1_survey_2', related_name='wk1_d1_survey_2', on_delete=models.PROTECT) wk1_d1_survey_3 = models.OneToOneField('survey.SurveyLinks', db_column='wk1_d1_survey_3', related_name='wk1_d1_survey_3', on_delete=models.PROTECT) wk1_d1_survey_4 = models.OneToOneField('survey.SurveyLinks', db_column='wk1_d1_survey_4', related_name='wk1_d1_survey_4', on_delete=models.PROTECT) wk1_d2_survey_1 = models.OneToOneField('survey.SurveyLinks', db_column='wk1_d2_survey_1', related_name='wk1_d2_survey_1', on_delete=models.PROTECT) wk1_d2_survey_2 = models.OneToOneField('survey.SurveyLinks', db_column='wk1_d2_survey_2', related_name='wk1_d2_survey_2', on_delete=models.PROTECT) wk1_d2_survey_3 = models.OneToOneField('survey.SurveyLinks', db_column='wk1_d2_survey_3', related_name='wk1_d2_survey_3', on_delete=models.PROTECT) wk1_d2_survey_4 = models.OneToOneField('survey.SurveyLinks', db_column='wk1_d2_survey_4', related_name='wk1_d2_survey_4', on_delete=models.PROTECT) wk2_d1_survey_1 = models.OneToOneField('survey.SurveyLinks', db_column='wk2_d1_survey_1', related_name='wk2_d1_survey_1', on_delete=models.PROTECT) wk2_d1_survey_2 = models.OneToOneField('survey.SurveyLinks', db_column='wk2_d1_survey_2', related_name='wk2_d1_survey_2', on_delete=models.PROTECT) wk2_d1_survey_3 = models.OneToOneField('survey.SurveyLinks', db_column='wk2_d1_survey_3', related_name='wk2_d1_survey_3', on_delete=models.PROTECT) wk2_d1_survey_4 = models.OneToOneField('survey.SurveyLinks', db_column='wk2_d1_survey_4', related_name='wk2_d1_survey_4', on_delete=models.PROTECT) wk2_d2_survey_1 = models.OneToOneField('survey.SurveyLinks', db_column='wk2_d2_survey_1', related_name='wk2_d2_survey_1', on_delete=models.PROTECT) wk2_d2_survey_2 = models.OneToOneField('survey.SurveyLinks', db_column='wk2_d2_survey_2', related_name='wk2_d2_survey_2', on_delete=models.PROTECT) wk2_d2_survey_3 = models.OneToOneField('survey.SurveyLinks', db_column='wk2_d2_survey_3', related_name='wk2_d2_survey_3', on_delete=models.PROTECT) wk2_d2_survey_4 = models.OneToOneField('survey.SurveyLinks', db_column='wk2_d2_survey_4', related_name='wk2_d2_survey_4', on_delete=models.PROTECT) wk3_d1_survey_1 = models.OneToOneField('survey.SurveyLinks', db_column='wk3_d1_survey_1', related_name='wk3_d1_survey_1', on_delete=models.PROTECT) wk3_d1_survey_2 = models.OneToOneField('survey.SurveyLinks', db_column='wk3_d1_survey_2', related_name='wk3_d1_survey_2', on_delete=models.PROTECT) wk3_d1_survey_3 = models.OneToOneField('survey.SurveyLinks', db_column='wk3_d1_survey_3', related_name='wk3_d1_survey_3', on_delete=models.PROTECT) wk3_d1_survey_4 = models.OneToOneField('survey.SurveyLinks', db_column='wk3_d1_survey_4', related_name='wk3_d1_survey_4', on_delete=models.PROTECT) wk3_d2_survey_1 = models.OneToOneField('survey.SurveyLinks', db_column='wk3_d2_survey_1', related_name='wk3_d2_survey_1', on_delete=models.PROTECT) wk3_d2_survey_2 = models.OneToOneField('survey.SurveyLinks', db_column='wk3_d2_survey_2', related_name='wk3_d2_survey_2', on_delete=models.PROTECT) wk3_d2_survey_3 = models.OneToOneField('survey.SurveyLinks', db_column='wk3_d2_survey_3', related_name='wk3_d2_survey_3', on_delete=models.PROTECT) wk3_d2_survey_4 = models.OneToOneField('survey.SurveyLinks', db_column='wk3_d2_survey_4', related_name='wk3_d2_survey_4', on_delete=models.PROTECT) wk4_d1_survey = models.OneToOneField('survey.SurveyLinks', db_column='wk4_d1_survey', related_name='wk4_d1_survey', on_delete=models.PROTECT) wk4_d2_survey = models.OneToOneField('survey.SurveyLinks', db_column='wk4_d2_survey', related_name='wk4_d2_survey', on_delete=models.PROTECT) wk4_d3_survey = models.OneToOneField('survey.SurveyLinks', db_column='wk4_d3_survey', related_name='wk4_d3_survey', on_delete=models.PROTECT) wk14_d1_survey = models.OneToOneField('survey.SurveyLinks', db_column='wk14_d1_survey', related_name='wk14_d1_survey', on_delete=models.PROTECT) wk14_d2_survey = models.OneToOneField('survey.SurveyLinks', db_column='wk14_d2_survey', related_name='wk14_d2_survey', on_delete=models.PROTECT) wk14_d3_survey = models.OneToOneField('survey.SurveyLinks', db_column='wk14_d3_survey', related_name='wk14_d3_survey', on_delete=models.PROTECT) class Meta: db_table = "schedule"
class Teacher(models.Model): user = models.OneToOneField(User, on_delete=models.CASCADE) profile_picture = models.ImageField(upload_to = 'profile_picture/teacher', default='pp.jpg' )
class Migration(migrations.Migration): initial = True dependencies = [ ('wagtailcore', '0040_page_draft_title'), ('snippets', '0001_initial'), ('images', '0001_initial'), ] operations = [ migrations.CreateModel( name='BlogIndexPage', fields=[ ('page_ptr', models.OneToOneField( auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='wagtailcore.Page')), ], options={ 'verbose_name': 'Blog Index Page', }, bases=(wagtail.contrib.routable_page.models.RoutablePageMixin, 'wagtailcore.page'), ), migrations.CreateModel( name='BlogPage', fields=[ ('page_ptr', models.OneToOneField( auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='wagtailcore.Page')), ('social_text', models.CharField( blank=True, help_text= 'Description of this page as it should appear when shared on social networks, or in Google results', max_length=255)), ('date_published', models.DateTimeField( blank=True, help_text= 'Use this field to override the date that the blog post appears to have been published.', null=True)), ('introduction', models.CharField(help_text='The page introduction text.', max_length=511)), ('body', wagtail.core.fields.StreamField([ ('heading', wagtail.core.blocks.CharBlock(icon='title')), ('paragraph', wagtail.core.blocks.RichTextBlock(icon='pilcrow')), ('image', wagtail.images.blocks.ImageChooserBlock( icon='image', template='includes/imageblock.html')), ('embed', wagtail.embeds.blocks.EmbedBlock(icon='code')), ('raw_html', wagtail.core.blocks.RawHTMLBlock(icon='placeholder')), ('table', wagtail.contrib.table_block.blocks.TableBlock( table_options={'renderer': 'html'})) ])), ('prepared_body', models.TextField( blank=True, help_text= 'The prepared body content after bibliography styling has been applied. Auto-generated on each save.', null=True)), ('author_group', models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='snippets.Group')), ('feed_image', models.ForeignKey( blank=True, help_text= 'This image will be used in listings and indexes across the site, if no feed image is added, the social image will be used.', null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='images.IETFImage')), ('social_image', models.ForeignKey( blank=True, help_text= "Image to appear alongside 'social text', particularly for sharing on social networks", null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='images.IETFImage')), ], options={ 'verbose_name': 'Blog Page', }, bases=('wagtailcore.page', models.Model), ), migrations.CreateModel( name='BlogPageAuthor', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('author', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='snippets.Person')), ('page', modelcluster.fields.ParentalKey( on_delete=django.db.models.deletion.CASCADE, related_name='authors', to='blog.BlogPage')), ('role', models.ForeignKey( blank=True, help_text= "Override the person's current role for this blog post.", null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='snippets.Role')), ], ), migrations.CreateModel( name='BlogPageTopic', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('page', modelcluster.fields.ParentalKey( on_delete=django.db.models.deletion.CASCADE, related_name='topics', to='blog.BlogPage')), ('topic', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='+', to='snippets.Topic')), ], ), ]
class Profile(models.Model): user = models.OneToOneField(settings.AUTH_USER_MODEL, on_delete=models.CASCADE) slug = sluggable_fields.SluggableField( decider=ProfileSlug, populate_from="name", slugify=slugify_user, unique=True ) is_public = models.BooleanField(default=True) name = models.CharField(max_length=200, validators=[validate_sluggable_name]) image = thumbnail.ImageField( upload_to=upload_path.auto_cleaned_path_stripped_uuid4, blank=True ) city_or_town = models.CharField(max_length=100, blank=True) country = models.CharField(max_length=100, blank=True) linkedin_url = models.URLField(max_length=400, blank=True) facebook_url = models.URLField(max_length=400, blank=True) personal_website_url = models.URLField(max_length=400, blank=True) lat = models.FloatField(null=True, blank=True, default=None) lon = models.FloatField(null=True, blank=True, default=None) cause_areas = postgres_fields.ArrayField( enum.EnumField(CauseArea), blank=True, default=list ) cause_areas_other = models.TextField( blank=True, validators=[MaxLengthValidator(2000)] ) available_to_volunteer = models.BooleanField(null=True, blank=True, default=None) open_to_job_offers = models.BooleanField(null=True, blank=True, default=None) expertise_areas = postgres_fields.ArrayField( enum.EnumField(ExpertiseArea), blank=True, default=list ) expertise_areas_other = models.TextField( blank=True, validators=[MaxLengthValidator(2000)] ) career_interest_areas = postgres_fields.ArrayField( enum.EnumField(ExpertiseArea), blank=True, default=list ) available_as_speaker = models.BooleanField(null=True, blank=True, default=None) topics_i_speak_about = models.TextField( blank=True, validators=[MaxLengthValidator(2000)] ) organisational_affiliations = postgres_fields.ArrayField( enum.EnumField(OrganisationalAffiliation), blank=True, default=list ) summary = models.TextField(blank=True, validators=[MaxLengthValidator(2000)]) giving_pledges = postgres_fields.ArrayField( enum.EnumField(GivingPledge), blank=True, default=list ) local_groups = models.ManyToManyField(LocalGroup, through="Membership", blank=True) legacy_record = models.PositiveIntegerField( null=True, default=None, editable=False, unique=True ) slugs = contenttypes_fields.GenericRelation(ProfileSlug) objects = ProfileManager() class Meta: ordering = ["name", "slug"] def __str__(self): return self.name def get_absolute_url(self): return urls.reverse("profile", args=[self.slug]) def geocode(self): self.lat = None self.lon = None if self.city_or_town and self.country: location = geocoders.Nominatim(timeout=10).geocode( f"{self.city_or_town}, {self.country}" ) if location: self.lat = location.latitude self.lon = location.longitude return self def get_pretty_cause_areas(self): return prettify_property_list( CauseArea, self.cause_areas, self.cause_areas_other ) def get_pretty_expertise(self): return prettify_property_list( ExpertiseArea, self.expertise_areas, self.expertise_areas_other ) def get_pretty_career_interest_areas(self): return prettify_property_list(ExpertiseArea, self.career_interest_areas) def get_pretty_giving_pledges(self): if self.giving_pledges: return ", ".join(map(GivingPledge.label, self.giving_pledges)) else: return "N/A" def get_pretty_organisational_affiliations(self): if self.organisational_affiliations: return ", ".join( map(OrganisationalAffiliation.label, self.organisational_affiliations) ) else: return "N/A" def get_pretty_local_groups(self): if self.local_groups: return ", ".join( [ "{local_group}".format(local_group=x.name) for x in self.local_groups.all() ] ) else: return "N/A" def write_data_export_zip(self, request, response): with zipfile.ZipFile(response, mode="w") as zip_file: with zip_file.open( f"{self.slug}.json", mode="w" ) as json_binary_file, io.TextIOWrapper(json_binary_file) as json_file: json.dump( { "email": self.user.email, "date_joined": self.user.date_joined.isoformat(), "last_login": self.user.last_login.isoformat(), "url": request.build_absolute_uri(self.get_absolute_url()), "is_public": self.is_public, "name": self.name, "city_or_town": self.city_or_town, "country": self.country, "cause_areas": list(map(CauseArea.label, self.cause_areas)), "cause_areas_other": self.cause_areas_other, "available_to_volunteer": self.available_to_volunteer, "open_to_job_offers": self.open_to_job_offers, "expertise_areas": list( map(ExpertiseArea.label, self.expertise_areas) ), "expertise_areas_other": self.expertise_areas_other, "career_interest_areas": list( map(ExpertiseArea.label, self.career_interest_areas) ), "available_as_speaker": self.available_as_speaker, "topics_i_speak_about": self.topics_i_speak_about, "organisational_affiliations": list( map( OrganisationalAffiliation.label, self.organisational_affiliations, ) ), "summary": self.summary, "giving_pledges": list( map(GivingPledge.label, self.giving_pledges) ), "member_of_local_groups": [ request.build_absolute_uri(local_group.get_absolute_uri()) for local_group in self.local_groups.all() ], "organiser_of_local_groups": [ request.build_absolute_uri(local_group.get_absolute_uri()) for local_group in self.user.localgroup_set.all() ], "aliases": [ request.build_absolute_uri( urls.reverse("profile", kwargs={"slug": slug.slug}) ) for slug in self.slugs.filter(redirect=True) ], "legacy_hub_url": ( self.legacy_record and request.build_absolute_uri( urls.reverse( "profile_legacy", kwargs={"legacy_record": self.legacy_record}, ) ) ), }, json_file, indent=2, ) if self.image: with self.image.open() as image_src_file, zip_file.open( self.slug + pathlib.PurePath(self.image.name).suffix, mode="w" ) as image_dst_file: shutil.copyfileobj(image_src_file, image_dst_file) def image_placeholder(self): return f"Avatar{self.id % 10}.png" def has_cause_area_details(self): cause_area_details_exist = [ len(self.cause_areas) > 0, len(self.cause_areas_other) > 0, len(self.giving_pledges) > 0, self.available_to_volunteer, ] return any(cause_area_details_exist) def has_career_details(self): career_details_exist = [ len(self.expertise_areas), len(self.expertise_areas_other), self.open_to_job_offers, ] return any(career_details_exist) def has_community_details(self): community_details_exist = [ len(self.organisational_affiliations) > 0, self.local_groups.exists(), self.user.localgroup_set.exists(), self.available_as_speaker, len(self.topics_i_speak_about) > 0, ] return any(community_details_exist)
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ('auth', '0009_alter_user_last_name_max_length'), ] operations = [ migrations.CreateModel( name='Book', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=100)), ('author', models.CharField(max_length=100)), ('total_pages', models.IntegerField()), ('isbn', models.IntegerField(unique=True)), ('first_published', models.IntegerField()), ('avail', models.IntegerField(blank=True)), ], ), migrations.CreateModel( name='Class', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=100)), ('semester', models.IntegerField(blank=True)), ('books', models.ManyToManyField(to='users.Book')), ], ), migrations.CreateModel( name='Department', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=100)), ], ), migrations.CreateModel( name='Distributor', fields=[ ('user', models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, primary_key=True, serialize=False, to=settings.AUTH_USER_MODEL)), ('title', models.CharField(max_length=100, unique=True)), ], ), migrations.CreateModel( name='Order', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('books', models.ManyToManyField(to='users.Book')), ], ), migrations.CreateModel( name='Publisher', fields=[ ('user', models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, primary_key=True, serialize=False, to=settings.AUTH_USER_MODEL)), ('title', models.CharField(max_length=100, unique=True)), ], ), migrations.CreateModel( name='Secretary', fields=[ ('user', models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, primary_key=True, serialize=False, to=settings.AUTH_USER_MODEL)), ('title', models.CharField(max_length=100, unique=True)), ], ), migrations.CreateModel( name='Student', fields=[ ('user', models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, primary_key=True, serialize=False, to=settings.AUTH_USER_MODEL)), ('dept', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='users.Department')), ], ), migrations.CreateModel( name='University', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=100, unique=True)), ], ), migrations.AddField( model_name='student', name='uni', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='users.University'), ), migrations.AddField( model_name='order', name='user', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL), ), migrations.AddField( model_name='department', name='uni', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='users.University'), ), migrations.AddField( model_name='class', name='dept', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='users.Department'), ), migrations.AddField( model_name='book', name='dist', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='users.Distributor'), ), migrations.AddField( model_name='book', name='pub', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='users.Publisher'), ), ]
class Migration(migrations.Migration): dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ('contenttypes', '0001_initial'), ] operations = [ migrations.CreateModel( name='Order', fields=[ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), ('date', models.DateField(auto_now_add=True)), ('open', models.BooleanField(default=True)), ('last_change', models.DateTimeField(auto_now=True)), ('waiting_payment', models.BooleanField(default=False)), ], options={}, bases=(models.Model, ), ), migrations.CreateModel( name='Invoice', fields=[ ('order', models.OneToOneField(primary_key=True, serialize=False, to='orders.Order')), ('date', models.DateField(auto_now_add=True)), ], options={}, bases=(models.Model, ), ), migrations.CreateModel( name='OrderItem', fields=[ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), ('description', models.CharField(max_length=150)), ('value', models.DecimalField(max_digits=6, decimal_places=2)), ('object_id', models.PositiveIntegerField()), ('content_type', models.ForeignKey(to='contenttypes.ContentType')), ('order', models.ForeignKey(to='orders.Order')), ], options={}, bases=(models.Model, ), ), migrations.CreateModel( name='Payment', fields=[ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), ('date', models.DateField(auto_now_add=True)), ('payed', models.BooleanField(default=False)), ('payment_ref', models.CharField(max_length=150, null=True, blank=True)), ('value_inc', models.DecimalField(default=0, max_digits=6, decimal_places=2)), ('order', models.ForeignKey(related_name='payment', to='orders.Order')), ], options={}, bases=(models.Model, ), ), migrations.CreateModel( name='PaymentType', fields=[ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), ('name', models.CharField(max_length=50)), ('accounting', models.BooleanField(default=False)), ], options={}, bases=(models.Model, ), ), migrations.CreateModel( name='Vat', fields=[ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), ('valid_from', models.DateField()), ('name', models.CharField(max_length=25)), ('rate', models.DecimalField(default=0, max_digits=5, decimal_places=4)), ], options={}, bases=(models.Model, ), ), migrations.AddField( model_name='payment', name='type', field=models.ForeignKey(to='orders.PaymentType'), preserve_default=True, ), migrations.AddField( model_name='orderitem', name='vat', field=models.ForeignKey(to='orders.Vat'), preserve_default=True, ), migrations.AddField( model_name='order', name='ordered_by', field=models.ForeignKey(to=settings.AUTH_USER_MODEL), preserve_default=True, ), ]
class Customer(models.Model): """ Represents a customer and is "profile class" to the User class. """ zip_validator = RegexValidator(r'^[0-9]{5}$', 'Bara siffror, utan mellanslag') phone_validator = RegexValidator(r'^07[0-9]{5,10}$', 'bara siffror i telefonnumret') first_name = models.CharField(max_length=50) last_name = models.CharField(max_length=50) street = models.CharField(max_length=100) postal_code = models.CharField(max_length=5, validators=[zip_validator]) city = models.CharField(max_length=20) phone = models.CharField(max_length=20, validators=[phone_validator]) active = models.BooleanField(default=True) user = models.OneToOneField("User", on_delete=models.CASCADE) week_0 = models.BooleanField(default=False) week_1 = models.BooleanField(default=False) email = models.EmailField( verbose_name='e-post', max_length=255, unique=True ) def save(self, *args, **kwargs): if not hasattr(self, 'user'): self.user = User( is_active=True, is_superuser=False, is_staff=False ) self.user.save() super().save(*args, **kwargs) # Call the "real" save() method. def full_adress(self): return '%s %s %s' % (self.street, self.postal_code, self.city) cancels = models.ManyToManyField( "Delivery", related_name="canceled_customers", blank=True) def is_canceled(self, delivery): """ Check if this customer has canceled a specific delivery """ return self.cancels.filter(pk=delivery.pk).count() > 0 def cancel(self, delivery): """ cancel a specific delivevery """ self.cancels.add(delivery) def uncancel(self, delivery): """ uncancel a previously canceled delivery """ self.cancels.remove(delivery) def full_name(self): """ customer full name (first name + last name) """ return '%s %s' % (self.first_name, self.last_name) def upcomming_deliveries_including_canceled(self): query = Delivery.objects.filter ( ) if not self.week_0: query = query.exclude(week_0=True) if not self.week_1: query = query.exclude(week_1=True) return query def upcomming_deliveries(self): return self.upcomming_deliveries_including_canceled().exclude(canceled_customers=self)
class Sub(models.Model): '''sub model''' user = models.OneToOneField(User, on_delete=models.CASCADE) profile_pic = models.ImageField(upload_to="media/pics", null=True, default=None) liked_posts = models.TextField(default="[]") liked_comments = models.TextField(default="[]") reported_posts = models.TextField(default="[]") reported_comments = models.TextField(default="[]") communities = TaggableManager(blank=True) cake_day = models.DateTimeField(auto_now_add=True) reports = models.IntegerField(default=0) uuid = models.UUIDField(default=uuid.uuid4, editable=False, unique=True) @property def get_username(self): return self.user.username @property def get_profile_pic_url(self): if self.profile_pic and hasattr(self.profile_pic, 'url'): return self.profile_pic.url else: return None @property def get_cake_day(self): return DateFormat(self.cake_day).format("M d, Y") @property def get_communities_as_list(self): return [com.slug for com in self.communities.all()] @property def get_uuid_as_string(self): return str(self.uuid) @property def liked_posts_as_list(self): return json.loads(self.liked_posts) @liked_posts_as_list.setter def liked_posts_as_list(self, like_list): self.liked_posts = json.dumps(like_list) self.save() @property def liked_comments_as_list(self): return json.loads(self.liked_comments) @liked_comments_as_list.setter def liked_comments_as_list(self, like_list): self.liked_comments = json.dumps(like_list) self.save() @property def reported_posts_as_list(self): return json.loads(self.reported_posts) @reported_posts_as_list.setter def reported_posts_as_list(self, report_list): self.reported_posts = json.dumps(report_list) self.save() @property def reported_comments_as_list(self): return json.loads(self.reported_comments) @reported_comments_as_list.setter def reported_comments_as_list(self, report_list): self.reported_comments = json.dumps(report_list) self.save() def __str__(self): return self.user.username
class Author(models.Model): user = models.OneToOneField(User, on_delete=models.CASCADE) def __str__(self): return self.user.username
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='TaskerProfile', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('mobile_number', models.CharField(max_length=20)), ('photo', models.URLField()), ('timestamp_created', models.DateTimeField(auto_now_add=True)), ('last_updated', models.DateTimeField(auto_now=True)), ('last_login', models.DateTimeField(blank=True, null=True)), ('description', models.TextField(blank=True, null=True)), ('city', models.CharField(blank=True, max_length=50, null=True)), ('vehicle', models.CharField(blank=True, max_length=50, null=True)), ('closing_message', models.TextField(blank=True, null=True)), ('work_area_radius', models.FloatField(blank=True, null=True)), ('user', models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, related_name='taskerprofile_user', to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='Notification', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('type', models.CharField(max_length=20)), ('message', models.TextField()), ('timestamp_created', models.DateTimeField(auto_now_add=True)), ('user', models.ManyToManyField(related_name='notification_user', to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='InviteCode', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('code', models.CharField(max_length=20)), ('timestamp_created', models.DateTimeField(auto_now_add=True)), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='invitecode_user', to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='CustomerProfile', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('mobile_number', models.CharField(max_length=20)), ('photo', models.URLField()), ('timestamp_created', models.DateTimeField(auto_now_add=True)), ('last_updated', models.DateTimeField(auto_now=True)), ('last_login', models.DateTimeField(blank=True, null=True)), ('user', models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, related_name='customerprofile_user', to=settings.AUTH_USER_MODEL)), ], ), ]
class Client(models.Model): id = UuidField(primary_key=True) person = models.OneToOneField(Person) idRecord = models.PositiveIntegerField() legacyRecord = models.CharField(max_length=15) admission_date = models.DateField(null=True) active = models.BooleanField(default=True) comments = models.TextField(blank=True) objects = ClientManager() payment_condition = models.ForeignKey('PaymentCondition') def __unicode__(self): return (u"%s" % (self.person.name.title(), )) \ if self.person.is_company() \ else (u"%s" % (self.person.name.title())) class Meta: ordering = ['person'] permissions = ( ("client_add", "Can add clients"), ("client_change", "Can change clients"), ("client_list", "Can list clients"), ("client_write", "Can write clients"), ) def revision(self): return reversion.get_for_object(self).order_by( '-revision__date_created').latest( 'revision__date_created').revision def revision_created(self): return reversion.get_for_object(self).order_by( 'revision__date_created').latest('revision__date_created').revision def referrals_charged(self): return self.referral_set.charged().filter(client=self) def referrals_discharged(self): return self.referral_set.discharged().filter(client=self) def employees(self): from gestorpsi.person.models import CompanyClient return CompanyClient.objects.filter( company__person__client=self).filter(client__active=True) def family_members(self): family_list = [] for i in Family.objects.filter(Q(client=self) | Q( client_related=self)).order_by('-active', '-responsible', 'relation_level', 'client__person__name', 'client_related__person__name'): responsable = False id = i.client.id if not i.client == self else i.client_related.id name = i.client if not i.client == self else i.client_related dict = {} if not i.client == self: for x, y in FAMILY_RELATION_REVERSE: dict[x] = y.__unicode__() relation_level = dict[i.relation_level] else: if i.responsible: responsable = True relation_level = i.get_relation_level_display() family_list.append([id, name, relation_level, responsable, i.id, i.active, i.comment]) # id = client selected id, i.id = family relation id return family_list def family_members_active(self): family_list = [] for i in self.family_members(): if i[5]: family_list.append(i) return family_list def is_company(self): return True if hasattr(self.person, 'company') else False def is_active(self): return True if self.active else False def is_busy(self, start_time, end_time): ''' check if client is busy in schedule for selected range filter 1: start time not in occurrence range filter 2: end time not in occurrence range filter 3: occurrence range are not between asked values note for exclude filters: presence = 4 -> occurrence unmarked presence = 5 -> occurrence rescheduled ''' from gestorpsi.schedule.models import ScheduleOccurrence queryset = ScheduleOccurrence.objects.filter(event__referral__client=self) \ .exclude(occurrenceconfirmation__presence=4) \ .exclude(occurrenceconfirmation__presence=5) return True if \ queryset.filter(start_time__lte=start_time, end_time__gt=start_time) or \ queryset.filter(start_time__lt=end_time, end_time__gte=end_time) or \ queryset.filter(start_time__gte=start_time, end_time__lte=end_time) \ else False def set_active(self): self.active = True self.save() def set_deactive(self): self.active = False self.save() def list_item_title(self): return u"%s" % (self.person.name) def list_item_url(self): return "/client/%s/home/" % (self.pk) def list_item_title_aditional(self): if not self.person.age: return "" return u"%s %s" % (self.person.age, _(u"years")) def list_item_description(self): return u"%s" % (self.person.get_first_phone()) def list_item_extra_links(self): html = '' for r in self.referrals_charged(): html += u"<a title='%s' href='/client/%s/referral/%s/' \ style='color:#%s;'><div class='service_name_html' \ style='background-color:#%s;'> </div></a>"\ % (r, self.pk, r.pk, r.service.font_color, r.service.color) html += '<a class="admit" href="/admission/%s/" \ title="%s"><img src="/media/img/22/ico_reg.png"></a>'\ % (self.pk, _('Admission Details')) return u"%s" % (html) list_item_extra_links.allow_tags = True
class Migration(migrations.Migration): initial = True dependencies = [ ('vehiculo', '0001_initial'), ] operations = [ migrations.CreateModel( name='Chofer', fields=[ ('cedula', models.CharField(max_length=10, primary_key=True, serialize=False)), ('nombre', models.CharField(max_length=50)), ('apellido', models.CharField(max_length=50)), ('fecha_nacimiento', models.DateField()), ], ), migrations.CreateModel( name='ChoferVehiculo', fields=[ ('id_chofer_vehiculo', models.AutoField(primary_key=True, serialize=False)), ('fecha_asignacion', models.DateField()), ('chofer', models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='chofer.Chofer')), ('vehiculo', models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='vehiculo.Vehiculo')), ], ), migrations.CreateModel( name='TipoChofer', fields=[ ('id_tipo_chofer', models.AutoField(primary_key=True, serialize=False)), ('nom_tipo_chofer', models.CharField(max_length=15)), ], ), migrations.CreateModel( name='TipoHorario', fields=[ ('id_horario', models.AutoField(primary_key=True, serialize=False)), ('hora_inicio', models.TimeField()), ('hora_fin', models.TimeField()), ('descripcion', models.CharField(max_length=30)), ], ), migrations.CreateModel( name='Licencia', fields=[ ('num_licencia', models.CharField(max_length=10, primary_key=True, serialize=False)), ('categoria', models.CharField(max_length=2)), ('fec_expedicion', models.DateField()), ('fec_vencimiento', models.DateField()), ('oficia_expedida', models.CharField(max_length=30)), ('chofer', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='chofer.Chofer')), ], ), migrations.CreateModel( name='ChoferVehiculoHorario', fields=[ ('id_chofer_vehiculo_horario', models.AutoField(primary_key=True, serialize=False)), ('chofer_vehiculo', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='chofer.ChoferVehiculo')), ('horario_turno', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='chofer.TipoHorario')), ], ), migrations.AddField( model_name='chofer', name='tipo_chofer', field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='chofer.TipoChofer'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [] operations = [ migrations.CreateModel( name='MyUser', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('password', models.CharField(max_length=128, verbose_name='password')), ('last_login', models.DateTimeField(blank=True, null=True, verbose_name='last login')), ('username', models.CharField( max_length=120, unique=True, validators=[ django.core.validators.RegexValidator( code='invalid_username', message='Username must be alphanumeric', regex='^[a-zA-Z0-9.@+-]*$') ])), ('name', models.CharField(max_length=120)), ('rollno', models.CharField(max_length=120, unique=True, validators=[ django.core.validators.RegexValidator( code='invalid_rollno', message='Sahi Roll Number Daalo !!', regex='^[0-9]*$') ])), ('email', models.EmailField(max_length=255, unique=True, verbose_name='email address')), ('branch', models.CharField(choices=[ ('CSE', 'B.Tech.- Comp. Sc. & Engg.'), ('ELECCOMM', 'B.Tech.- Elec. & Comm. Engg.'), ('MECHANICAL', 'B.Tech.- Mechanical Engg.'), ('ELECTRICAL', 'B.Tech.- Electrical Engg.'), ('IT', 'B.Tech.- Information Technology'), ('BBA', 'BBA'), ('BCA', 'BCA'), ('MBA', 'MBA'), ('MCA', 'MCA'), ('MCSE', 'M.Tech.- Comp. Sc. & Engg.'), ('MELECCOMM', 'M.Tech.- Elec. & Comm. Engg.') ], default='CSE', max_length=200)), ('semester', models.CharField(choices=[('1', '1'), ('2', '2'), ('3', '3'), ('4', '4'), ('5', '5'), ('6', '6'), ('7', '7'), ('8', '8')], default='6', max_length=200)), ('is_active', models.BooleanField(default=True)), ('is_admin', models.BooleanField(default=False)), ('is_staff', models.BooleanField(default=False)), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='Profile', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('profilepic', models.ImageField(upload_to='profilepics')), ('user', models.OneToOneField(on_delete=None, to=settings.AUTH_USER_MODEL)), ], ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Entity', fields=[ ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('cif', models.CharField(blank=True, max_length=50, null=True, verbose_name='NIF/CIF')), ('email', models.CharField(max_length=250, verbose_name='Email')), ('name', models.CharField(blank=True, max_length=250, null=True, verbose_name='Nombre')), ('description', models.TextField(blank=True, null=True, verbose_name='Descripci\xf3n')), ('short_description', models.TextField(blank=True, null=True, verbose_name='Descripci\xf3n corta')), ('phone_number', models.CharField(blank=True, max_length=25, null=True, verbose_name='Tel\xe9fono')), ('address', models.TextField(blank=True, null=True, verbose_name='Direcci\xf3n')), ('logo', imagekit.models.fields.ProcessedImageField( blank=True, null=True, upload_to=helpers.RandomFileName('entities/'), verbose_name='Imagen de perfil')), ('registered', models.DateTimeField(auto_now_add=True)), ('latitude', models.FloatField(verbose_name='Latitud')), ('longitude', models.FloatField(verbose_name='Longitud')), ('bonification_percent', models.FloatField( default=0, verbose_name='Porcentaje de bonificaci\xf3n')), ('max_percent_payment', models.FloatField( default=0, verbose_name='M\xe1ximo porcentaje de pago aceptado')), ('num_workers', models.IntegerField( default=0, verbose_name='N\xfamero de trabajadores')), ('legal_form', models.TextField(blank=True, null=True, verbose_name='Formulario legal')), ('facebook_link', models.CharField(blank=True, max_length=250, null=True, verbose_name='P\xe1gina de Facebook')), ('webpage_link', models.CharField(blank=True, max_length=250, null=True, verbose_name='P\xe1gina web')), ('twitter_link', models.CharField(blank=True, max_length=250, null=True, verbose_name='Perfil de Twitter')), ('telegram_link', models.CharField(blank=True, max_length=250, null=True, verbose_name='Canal de Telegram')), ('instagram_link', models.CharField(blank=True, max_length=250, null=True, verbose_name='Perfil de Instagram')), ('user', models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'ordering': ['registered'], 'verbose_name': 'Entidad', 'verbose_name_plural': 'Entidades', }, ), ]
class Migration(migrations.Migration): dependencies = [ ('structure', '0014_servicesettings_options'), ] operations = [ migrations.CreateModel( name='Flavor', fields=[ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), ('name', models.CharField(max_length=150, verbose_name='name')), ('uuid', uuidfield.fields.UUIDField(unique=True, max_length=32, editable=False, blank=True)), ('backend_id', models.CharField(max_length=255, db_index=True)), ('cores', models.PositiveSmallIntegerField(help_text=b'Number of cores in a VM')), ('ram', models.PositiveIntegerField(help_text=b'Memory size in MiB')), ('disk', models.PositiveIntegerField(help_text=b'Root disk size in MiB')), ('settings', models.ForeignKey(related_name='+', blank=True, to='structure.ServiceSettings', null=True)), ], options={ 'abstract': False, }, bases=(nodeconductor.logging.log.LoggableMixin, models.Model), ), migrations.CreateModel( name='Image', fields=[ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), ('name', models.CharField(max_length=150, verbose_name='name')), ('uuid', uuidfield.fields.UUIDField(unique=True, max_length=32, editable=False, blank=True)), ('backend_id', models.CharField(max_length=255, db_index=True)), ('min_disk', models.PositiveIntegerField(default=0, help_text=b'Minimum disk size in MiB')), ('min_ram', models.PositiveIntegerField(default=0, help_text=b'Minimum memory size in MiB')), ('settings', models.ForeignKey(related_name='+', blank=True, to='structure.ServiceSettings', null=True)), ], options={ 'abstract': False, }, bases=(models.Model,), ), migrations.CreateModel( name='OpenStackService', fields=[ ('service_ptr', models.OneToOneField(parent_link=True, auto_created=True, primary_key=True, serialize=False, to='structure.Service')), ], options={ 'abstract': False, }, bases=(nodeconductor.logging.log.LoggableMixin, 'structure.service'), ), migrations.CreateModel( name='OpenStackServiceProjectLink', fields=[ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), ('state', django_fsm.FSMIntegerField(default=1, choices=[(1, 'Sync Scheduled'), (2, 'Syncing'), (3, 'In Sync'), (4, 'Erred')])), ('tenant_id', models.CharField(max_length=64, blank=True)), ('internal_network_id', models.CharField(max_length=64, blank=True)), ('availability_zone', models.CharField(help_text=b'Optional availability group. Will be used for all instances provisioned in this tenant', max_length=100, blank=True)), ('project', models.ForeignKey(to='structure.Project')), ('service', models.ForeignKey(to='openstack.OpenStackService')), ], options={ 'abstract': False, }, bases=(nodeconductor.logging.log.LoggableMixin, models.Model), ), migrations.AddField( model_name='openstackservice', name='projects', field=models.ManyToManyField(related_name='openstack_services', through='openstack.OpenStackServiceProjectLink', to='structure.Project'), preserve_default=True, ), ]
class TestParentLinkAndRelatedName(ModelShow1_plain): superclass = models.OneToOneField( ModelShow1_plain, on_delete=models.CASCADE, parent_link=True, related_name='related_name_subclass' )
class CustomRelNmeAndRelQNmePM(CMSPlugin): cmsplugin_ptr = models.OneToOneField(CMSPlugin, related_name='reldesc_custom_reln2', related_query_name='reldesc_custom_relqn2', parent_link=True) title = models.CharField(max_length=50) search_fields = ['title']