This commit is contained in:
Mikan
2025-05-18 21:29:04 +03:00
parent 63228923a7
commit d70c5f73f5
50 changed files with 1344 additions and 52 deletions

View File

@@ -0,0 +1,143 @@
# Generated by Django 4.2.21 on 2025-05-18 18:14
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
initial = True
dependencies = [
]
operations = [
migrations.CreateModel(
name='EducationalInstitution',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=256, verbose_name='Название учреждения')),
],
options={
'verbose_name': 'Образовательное учреждение',
'verbose_name_plural': 'Образовательные учреждения',
},
),
migrations.CreateModel(
name='Profession',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=256, verbose_name='Название профессии')),
('description', models.TextField(blank=True, null=True, verbose_name='Описание')),
],
options={
'verbose_name': 'Профессия',
'verbose_name_plural': 'Профессии',
},
),
migrations.CreateModel(
name='ScoreVariable',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=30, verbose_name='Имя переменной')),
('title', models.CharField(max_length=70, verbose_name='Название переменной')),
('description', models.TextField(verbose_name='Описание')),
],
options={
'verbose_name': 'Переменная оценки',
'verbose_name_plural': 'Переменные оценки',
},
),
migrations.CreateModel(
name='Survey',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('title', models.CharField(max_length=70, verbose_name='Название опроса')),
],
options={
'verbose_name': 'Опрос',
'verbose_name_plural': 'Опросы',
},
),
migrations.CreateModel(
name='Statement',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('statement', models.CharField(max_length=256, verbose_name='Утверждение')),
('score_variable', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='surveys.scorevariable', verbose_name='Переменная оценки')),
],
options={
'verbose_name': 'Утверждение',
'verbose_name_plural': 'Утверждения',
},
),
migrations.CreateModel(
name='Specialty',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=256, verbose_name='Название специальности')),
('link', models.URLField(blank=True, null=True, verbose_name='Ссылка')),
('institution', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='surveys.educationalinstitution', verbose_name='Образовательное учреждение')),
],
options={
'verbose_name': 'Специальность',
'verbose_name_plural': 'Специальности',
},
),
migrations.AddField(
model_name='scorevariable',
name='survey',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='surveys.survey', verbose_name='Опрос'),
),
migrations.CreateModel(
name='QuestionPair',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('statement_a', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='pair_a', to='surveys.statement', verbose_name='Утверждение A')),
('statement_b', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='pair_b', to='surveys.statement', verbose_name='Утверждение B')),
('survey', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='surveys.survey', verbose_name='Опрос')),
],
options={
'verbose_name': 'Пара вопросов',
'verbose_name_plural': 'Пары вопросов',
},
),
migrations.CreateModel(
name='ProfessionTestResult',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('profession', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='surveys.profession', verbose_name='Профессия')),
('survey_score_variable', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='surveys.scorevariable', verbose_name='Переменная оценки')),
],
options={
'verbose_name': 'Результат теста по профессии',
'verbose_name_plural': 'Результаты тестов по профессиям',
},
),
migrations.CreateModel(
name='AgreementQuestion',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('question', models.CharField(max_length=256, verbose_name='Вопрос')),
('score_variable', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='surveys.scorevariable', verbose_name='Переменная оценки')),
('survey', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='surveys.survey', verbose_name='Опрос')),
],
options={
'verbose_name': 'Вопрос на согласие',
'verbose_name_plural': 'Вопросы на согласие',
},
),
migrations.CreateModel(
name='ProfessionSpecialtyLink',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('profession', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='surveys.profession', verbose_name='Профессия')),
('specialty', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='surveys.specialty', verbose_name='Специальность')),
],
options={
'verbose_name': 'Связь между профессией и специальностью',
'verbose_name_plural': 'Связи между профессиями и специальностями',
'unique_together': {('profession', 'specialty')},
},
),
]