【发布时间】:2018-02-05 15:27:33
【问题描述】:
我正在尝试使用 Django Rest Framework 为某个表批量创建行。我在documentation 中看到 DRF 支持它。
views.py
class UserProfileFeedViewSet(viewsets.ModelViewSet):
"""Handles creating, reading and updating profile feed items."""
authentication_classes = (TokenAuthentication,)
queryset = models.ProfileFeedItem.objects.all()
serializer_class = serializers.ProfileFeedItemSerializer(queryset, many=True)
permission_classes = (permissions.PostOwnStatus, IsAuthenticated)
def perform_create(self, serializer):
"""Sets the user profile to the logged in user."""
serializer.save(user_profile=self.request.user)
序列化器.py
class ProfileFeedItemListSerializer(serializers.ListSerializer):
def create(self,validated_data):
feed_list = [ProfileFeedItem(**item) for item in validated_data]
return ProfileFeedItem.objects.bulk_create(feed_list)
class ProfileFeedItemSerializer(serializers.ModelSerializer):
"""A serializer for profile feed items."""
class Meta:
model = models.ProfileFeedItem
list_serializer_class = ProfileFeedItemListSerializer
fields = ('id', 'user_profile', 'status_text', 'created_on')
extra_kwargs = {'user_profile': {'read_only': True}}
当我尝试使用管理表单发布时,我总是收到此错误。你能帮我找出我在这里做错了什么吗?
/api/feed/ 'ProfileFeedItemListSerializer' 对象的 TypeError 不是 可调用请求方法:GET请求 网址:http://127.0.0.1:8080/api/feed/ Django 版本:1.11 异常 类型:TypeError 异常值:'ProfileFeedItemListSerializer' 对象不可调用异常 位置:/home/ubuntu/.virtualenvs/profiles_api/local/lib/python3.5/site-packages/rest_framework/generics.py 在 get_serializer 中,第 111 行 Python 可执行文件:/home/ubuntu/.virtualenvs/profiles_api/bin/python Python 版本:3.5.2
【问题讨论】:
标签: django