2015-11-19 73 views
0

我有一個模型,名爲rides,我想要有權訪問我的自定義令牌身份驗證。我不要希望這是一個公開的整個視圖。身份驗證創建路由Django

如何將身份驗證方法添加到create方法?下面拋出一個錯誤,抱怨我不能將list_route添加到create方法中,因爲它已經存在。

class RideViewSet(viewsets.ModelViewSet): 

# POST /rides/ 
@list_route(methods=['post'], authentication_classes=[CustomTokenAuth]) 
    def create(self, request, *args, **kwargs): 
+0

你會同意pythong問題是沒有意義的,除非有適當的縮進。其次,你的代碼摘要太短了(例如什麼是@list_route?)第三,你需要包含堆棧跟蹤 – e4c5

+0

@ e4c5 im抱歉 - 我剛剛從ruby切換到pytho。我下次會縮進 – DaynaJuliana

回答

1

的裝飾不會在工作ViewSetlist/create/...

你需要對付自己的身份驗證。 因此,您需要填寫DRF與要求:

  • request._authenticator作爲AUTH後臺已經做了權威性
  • request.userrequest.auth作爲結果的權威性後端的authenticate()
+0

這將如何在實踐中工作。 '如果request.auth:'然後讓我的方法體在它下面? – DaynaJuliana