2016-11-21 34 views
1

URL中的錯誤== http://127.0.0.1:8000/posts/ D:\ Priyanka_Angular1 \ virtual_env \ django-angular \ lib \ site -packages \ rest_framework \ views.py在調度/posts /'PostList'中的AssertionError應包含`queryset`屬性,或覆蓋`get_queryset()`方法

  response = self.handle_exception(exc) 

... 

▶本地變量 d:\ Priyanka_Angular1 \ virtual_env \ Django的角度\ LIB \站點包\ rest_framework \在handle_exception views.py

  self.raise_uncaught_exception(exc) 

... 

▶Local vars d:\ Priyanka_Angular1 \ virtual_env \ Django的角度\ LIB \站點包\ rest_framework \ views.py在調度

  response = handler(request, *args, **kwargs) 

... 

▶本地變量 d:\ Priyanka_Angular1 \ virtual_env \ Django的角度\ LIB \網站-packages \ rest_framework \ generics.py進去

 return self.list(request, *args, **kwargs) 

... 

▶本地變量 d:\ Priyanka_Angular1 \ virtual_env \ Django的角度\ LIB \站點包\ rest_framework \列表mixins.py

 queryset = self.filter_queryset(self.get_queryset()) 

... 

▶本地變量 d:\ Priyanka_Angular1 \ virtual_env \ django的棱角\ lib中\站點包\ rest_framework \ generics.py在get_queryset

  % self.__class__.__name__ 

serializer.py

from rest_framework import serializers 
from posts.models import Post 

class PostSerializer(serializers.HyperlinkedModelSerializer): 
    author = serializers.Field(source='author.username') 
    api_url = serializers.SerializerMethodField('get_api_url') 

    class Meta: 
     model = Post 
     fields = ('id', 'title', 'description', 'created_on', 'author', 'url', 'api_url') 
     read_only_fields = ('id', 'created_on') 

    def get_api_url(self, obj): 
     return "#/post/%s" % obj.id 

views.py

from django.shortcuts import render 
from rest_framework import generics 
from posts.models import Post 
from posts.serializers import PostSerializer 

class PostList(generics.ListCreateAPIView): 
    """ 
    List all boards, or create a new board. 
    """ 
    model = Post 
    serializer_class = PostSerializer 


class PostDetail(generics.RetrieveUpdateDestroyAPIView): 
    """ 
    Retrieve, update or delete a board instance. 
    """ 
    model = Post 
    serializer_class = PostSerializer 

回答

2

Y您需要在PostList視圖以及PostDetail中包含queryset = Post.objects.all()

每個視圖都需要定義一個查詢集來知道要查找的對象。您可以使用queryset屬性(如我所建議的)或從get_queryset方法返回有效的查詢集來定義視圖的查詢集。

順便說一句,您可以擺脫您的視圖中的model屬性,因爲它們不被使用。這不是告訴視圖要查找哪些對象的正確方法。

+0

謝謝you.but not working – jyur

+0

錯誤保持不變嗎? – lucasnadalutti

+0

yes.same錯誤found.please給出詳細信息 – jyur