Сериализатор удалить родительское поле django - PullRequest
0 голосов
/ 14 мая 2018
   {
    "episode": {
        "id": 6,
        "channel_id": 2,
        "channel": {
            "id": 2,
            "tags": [
                "new"
            ]
    },
   {
    "episode": {
        "id": 7,
        "channel_id": 3,
        "channel": {
            "id": 2,
            "tags": [
                "new"
            ]
    }
},

Привет, я новичок в Джанго. Мне интересно, как удалить родительский эпизод, записанный в ответе сериализатора, и сразу перейти в id, канал. Эпизод здесь для меня бесполезен. У меня есть модель, которая устанавливает приоритет этих эпизодов. Исключили поле приоритета и идентификатора, но не знаем, как удалить родительский эпизод.

class TrendingEpisode(models.Model):
    episode = models.ForeignKey(Episode, null=False, blank=False, on_delete=models.CASCADE)
    priority = models.IntegerField(null=False, blank=False)

class Episode(models.Model):
    channel = models.ForeignKey(Channel, on_delete=models.CASCADE)

    tags = models.ManyToManyField(EpisodeTag)
    #some other fields 

1 Ответ

0 голосов
/ 14 мая 2018

Почему вы используете TrendingEpisode с Foreignkey? Просто используйте Episode только.

class Episode(models.Model):
    channel = models.ForeignKey(Channel, on_delete=models.CASCADE)

    tags = models.ManyToManyField(EpisodeTag)
    #some other fields 

Тогда вы можете получить ваши сериализованные данные, как показано ниже

{ "id": 6, "channel_id": 2, "channel": { "id": 2, "tags": [ "new" ] }, }

...