Как создать два объекта таблицы одним набором представлений django rest framework
Здравствуйте, я пытаюсь сохранить объекты в таблице reviews из таблицы posts, отфильтрованные по type="R"
Я думаю, что мне нужно переопределить def create, но я не знаю как. Пожалуйста, помогите мне, спасибо.
это моя модель поста
class Post(models.Model):
"""Model definition for Post."""
class Meta:
db_table = 'posts'
verbose_name = 'Post'
verbose_name_plural = 'Posts'
POST_TYPE = (
('R', 'review'),
('C', 'clubpost'),
('A', 'advertisement'),
)
title = models.CharField(
max_length=20,
null=False,
verbose_name='제목'
)
content = models.TextField(
max_length=2000,
null=False,
verbose_name='내용'
)
author = models.ForeignKey(
User,
on_delete=models.CASCADE,
null=False,
verbose_name='글쓴이',
)
type = models.CharField(
max_length=5,
choices=POST_TYPE,
null=True,
verbose_name='글 종류',
)
created_at = models.DateTimeField(
auto_now_add=True,
verbose_name='생성 일시',
)
updated_at = models.DateTimeField(
auto_now=True,
verbose_name='수정 일시',
)
обзорная модель
class Review(models.Model):
class Meta:
db_table = 'reviews'
verbose_name = 'Review'
verbose_name_plural = 'Reviews'
post = models.OneToOneField(
Post,
on_delete=models.CASCADE,
related_name="review",
)
пост сериализатор
class PostSerializer(ModelSerializer):
author = UserAbstractSerializer(read_only=True)
class Meta:
model = Post
fields = [
'id',
'title',
'content',
'author',
'type',
'created_at',
'updated_at'
]
extra_kwargs = {
'title': {
'error_messages': {
'required': '제목을 입력해주세요.',
}
},
'content': {
'error_messages': {
'required': '내용을 입력해주세요.',
}
}
}
обзор сериализатора
class ReviewSerializer(ModelSerializer):
post_id = PostSerializer(read_only=True)
class Meta:
model = Post
fields = [
'id',
'post_id',
]
обзор набора представлений
class ReviewViewSet(PostViewSet):
queryset = Post.objects.filter(type="R"),
serializer_class = ReviewSerializer
def perform_create(self, serializer):
return serializer.save(author=self.request.user, type="R")
Я думаю, что должен переопределить метод create в наборе просмотров, но не знаю, как написать
хочу разобраться как создать два объекта таблицы одним viewset django rest framework