add order-level QuestionAnswers

This commit is contained in:
Mira Weller
2026-08-07 21:49:47 +02:00
parent f03414f7ea
commit 5fbf7e4f14
2 changed files with 42 additions and 1 deletions
@@ -0,0 +1,28 @@
# Generated by Django 5.2.15 on 2026-08-07 19:44
import django.db.models.deletion
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('pretixbase', '0309_questionnaire_questionnairechild'),
]
operations = [
migrations.AddField(
model_name='questionanswer',
name='checkoutsession',
field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='answers', to='pretixbase.checkoutsession'),
),
migrations.AddField(
model_name='questionanswer',
name='order',
field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='answers', to='pretixbase.order'),
),
migrations.AlterUniqueTogether(
name='questionanswer',
unique_together={('cartposition', 'question'), ('checkoutsession', 'question'), ('order', 'question'), ('orderposition', 'question')},
),
]
+14 -1
View File
@@ -1336,6 +1336,14 @@ class QuestionAnswer(models.Model):
'CartPosition', null=True, blank=True,
related_name='answers', on_delete=models.CASCADE
)
order = models.ForeignKey(
'Order', null=True, blank=True,
related_name='answers', on_delete=models.CASCADE
)
checkoutsession = models.ForeignKey(
'CheckoutSession', null=True, blank=True,
related_name='answers', on_delete=models.CASCADE
)
question = models.ForeignKey(
Question, related_name='answers', on_delete=models.CASCADE
)
@@ -1351,7 +1359,12 @@ class QuestionAnswer(models.Model):
objects = ScopedManager(organizer='question__event__organizer')
class Meta:
unique_together = [['orderposition', 'question'], ['cartposition', 'question']]
unique_together = [
['orderposition', 'question'],
['cartposition', 'question'],
['order', 'question'],
['checkoutsession', 'question'],
]
@property
def backend_file_url(self):