migrate teh rest

This commit is contained in:
Ross
2024-02-17 23:16:06 +00:00
parent 3a52855eb7
commit 5ea910cd63
10 changed files with 205 additions and 7 deletions
@@ -0,0 +1,30 @@
# Generated by Django 4.1.4 on 2024-02-17 23:11
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('sbas', '0006_rename_exam_collection_exam_examcollection'),
]
operations = [
migrations.CreateModel(
name='ExamQuestionDetail',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('sort_order', models.IntegerField(default=1000)),
('exam', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='sbas.exam')),
('rapid', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='sbas.question')),
],
options={
'ordering': ('sort_order',),
},
),
migrations.RunSQL(
"""INSERT INTO sbas_examquestiondetail
SELECT * FROM sbas_exam_exam_questions;"""
),
]
@@ -0,0 +1,22 @@
# Generated by Django 4.1.4 on 2024-02-17 23:13
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('sbas', '0007_examquestiondetail'),
]
operations = [
migrations.RemoveField(
model_name='exam',
name='exam_questions',
),
migrations.AddField(
model_name='exam',
name='exam_questions',
field=models.ManyToManyField(related_name='exams', through='sbas.ExamQuestionDetail', to='sbas.question'),
),
]
+11 -1
View File
@@ -154,11 +154,21 @@ class Question(QuestionBase):
return self.stem.replace("<p>", "", 1).replace("</p>", "", 1)
class ExamQuestionDetail(models.Model):
sort_order = models.IntegerField(default=1000)
exam = models.ForeignKey("Exam", on_delete=models.CASCADE)
rapid = models.ForeignKey(Question, on_delete=models.CASCADE)
class Meta:
ordering = ("sort_order",)
@reversion.register
class Exam(ExamBase):
app_name = "sbas"
exam_questions = SortedManyToManyField(Question, related_name="exams", blank="true")
#exam_questions = SortedManyToManyField(Question, related_name="exams", blank="true")
exam_questions = models.ManyToManyField(Question, through=ExamQuestionDetail, related_name="exams")
time_limit = models.IntegerField(
help_text="Exam time limit (in seconds)",