@NikClik

Как сформировать отношение ключ — значение, в __str__ модели?

Начну с самого далека, пишу клиент-серверное приложение, в нем, допустим есть 2 модели, запись и действия над записью (пример взят условно, я знаю, что организовать запись действий над записью можно и по другому)
написал apiшку, написал Serializer для модели и когда посылаю запрос приходит примерно такой ответ:
[
    {
        "Запись.ключ1": "Значение",
        "Запись.ключ2": "Значение",
        "Запись.ключ3": "Значение",
        "Запись.ключ4": "Значение",
        "Действия": [
            "Значение 1: Значение 2 Значение 3 Значение 4",
            "Значение 1: Значение 2 Значение 3 Значение 4",
            "Значение 1: Значение 2 Значение 3 Значение 4"
        ]
    }
]

Суть в том, что строка, которая возвращается из модели "Действия" прописывается в __str__ модели, можно ли как-нибудь записать в методе __str__ чтобы из модели "Действия" все возвращалось в виде:
"Действия": [
        {
            "Действие.ключ1" : "Значение1",
            "Действие.ключ2" : "Значение2",
            "Действие.ключ3" : "Значение3",
        },
        {
            "Действие.ключ1" : "Значение1",
            "Действие.ключ2" : "Значение2",
            "Действие.ключ3" : "Значение3",
        },
]

и если нельзя, то как мне организовать чтобы данные передавались именно так, как я хочу?
  • Вопрос задан
  • 89 просмотров
Пригласить эксперта
Ответы на вопрос 1
__str__ - это формирование текстового представления класса для вставики в лог или в дебагер, к примеру
вам просто надо проверять тип подчиненного обьекта, и если он один из из списка возможных подчиненнных классов, то у него вызывать метод toJSON() к примеру. естественно у подчиненных классов этот метод надо реализовать
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы