Лучший способ сделать ответ django api

Я попытался создать модель для представления подобной ситуации.

каждая строка вопросов может иметь несколько колонок вопросов. существует несколько типов колонок вопросов

class QuestionRow(models.Model):
   report_question = models.CharField(max_length=200)
   report_group = models.CharField(max_length=20)

class QuestionColumn(models.Model):
   header_text = models.CharField(max_length=100)
   data_type = models.CharField(max_length=10)

class QuestionItem(models.Model):
   column = models.ForeignKey(QuestionColumn)
   row = models.ForeignKey(QuestionRow)

Моя цель - найти оптимизированный способ запроса и возврата ответа. где каждая строка вопроса в элементе вопроса может иметь или не иметь несколько столбцов вопроса. думаю как это сделать используя django annotate, aggregate

[{
    "report_group": 1,
    "question_row": "1a. Alarm system not active or not sufficient?",
    "question_columns" : [
        {
            "header_text": "Yes/No",
            "data_type": "Bool"
        },
        {
            "header_text": "Risk Score",
            "data_type": ""
        }
    ]
},
{
    "report_group": 1,
    "question_row": "1b. Notification system not active or inactive?",
    "question_columns" : [
        {
            "header_text": "Yes/No",
            "data_type": "Bool"
        },
        {
            "header_text": "Risk Score",
            "data_type": ""
        }
    ]
}]
Вернуться на верх