2016-03-31 94 views
0

這樣我就可以找回我的數據完全正常,但是當我嘗試後,我得到無法發佈使用REST API

{"detail":"Method \"POST\" not allowed."} 

views.py

class ClubFullList(generics.ListAPIView): 
    serializer_class = ClubSerializer 

    def get_queryset(self): 
     return Club.objects.all() 

class ClubList(generics.ListAPIView): 
    serializer_class = ClubSerializer 

    def get_queryset(self): 
     username = self.kwargs['username'] 
     return Club.objects.filter(abv=username) 

models.py

class Club(models.Model): 
     name = models.CharField(max_length=255) 
     abv = models.CharField(max_length=255) 

serializers.py

class ClubSerializer(serializers.HyperlinkedModelSerializer): 
    class Meta: 
     model = Club 
     fields = ['name', 'abv'] 

我該如何解決這個問題?

回答

3

您正在發送POST請求在一個端點上,只允許GET請求。

ListAPIView是一個只讀通用視圖。要使用POST請求創建模型對象,請使用CreateAPIViewListCreateAPIView

1

the docs for ListApiView

用於只讀端點代表模型實例的集合。

如果要發佈到端點,則需要使用不同的視圖類。