Мутация для модели, которая содержит некоторые поля чужих
У меня есть модель подкаста:
class Podcast(models.Model):
title = models.CharField(max_length=255,)
user = models.ForeignKey(User, related_name="podcasts", on_delete=models.CASCADE)
created_at = models.DateTimeField(auto_now=True)
channel = models.ForeignKey(Channel, related_name="podcasts", null=True, blank=True, on_delete=models.CASCADE)
message = models.TextField()
Вот модель канала:
class Channel(models.Model):
name = models.CharField(max_length=255, unique=True)
slug = models.SlugField(allow_unicode=True, unique=True)
description = models.TextField(blank=True, default='')
и я использовал get_user_model для модели User
Затем я хочу создать мутацию для модели Podcast. Как это можно сделать? Я знаю, что если в модели нет foreingkey, это будет сделано:
class CreatePodcast(graphene.Mutation):
class Input:
title = graphene.String(required=True,)
message = graphene.String(required=True,)
Output = PodcastType
@staticmethod
def mutate(root, info, **kwargs):
podcast = PodcastModel(**kwargs)
podcast.save()
return podcast
Как я могу импортировать поле канала при создании подкаста по мутации?