у меня есть API, который имеет повторяющееся число полого для одинаковых сообщенийДжанго апи делает список полого
Хотя комментариев принадлежат же названию, они разделены на другого объект. Я хотел, чтобы комментарии были списком вроде "comments": ["hi1","hi2","hi3","hi4","ads"]
, не знаю, как этого добиться. Все, чтобы быть в одном словаре
Моя модель
class Post(models.Model):
title=models.CharField(max_length=200)
description=models.TextField(max_length=10000)
pub_date=models.DateTimeField(auto_now_add=True)
def __unicode__(self):
return self.title
def description_as_list(self):
return self.description.split('\n')
class Comment(models.Model):
title=models.ForeignKey(Post)
comments=models.CharField(max_length=200)
def __unicode__(self):
return '%s' % (self.title)
сериализатора
class CommentSerializer(serializers.ModelSerializer):
id = serializers.CharField(source="title.id", read_only=True)
title = serializers.CharField(source="title.title", read_only=True)
class Meta:
model = Comment
fields = ('id','title','comments')
class PostSerializer(serializers.ModelSerializer):
class Meta:
model = Post
fields = ('id','title','description','pub_date')
views.py
class CommentList(generics.ListCreateAPIView):
queryset = Comment.objects.all()
serializer_class = CommentSerializer
class CommentDetail(generics.RetrieveUpdateDestroyAPIView):
queryset = Comment.objects.all()
serializer_class = CommentSerializer
Что можно сделать, чтобы сделать список?
Любая помощь очень appreciated..Thanks заранее
Вы можете избавиться от read_only = True. По умолчанию для SerializerMethodField я предполагаю. –
@ davka ... Я думаю, что есть проблема с линией ...... data.append (comment.comments) ............. моя IDE говорит, что не может искать комментарии – Coeus
комментарии должны автоматически добавляться django, когда вы используете 'title = models.ForeignKey (Post)' в своей модели. Ваша IDE может не понимать django. Попробуйте изменить модель на 'title = models.ForeignKey (Post, related_name = 'comments')'. См. Http://stackoverflow.com/questions/2642613/what-is-related-name-used-for-in-django – dkarchmer