我想使用Tastypie授權來授予用戶訪問其對象的權限。但是,如果我正確地做到了,我會遇到問題。我跟着這裏的例子:Django Tastypie僅用戶對象授權
當我嘗試創建一個新的對象,我得到一個404錯誤,因爲有評估,如果我評論說出來
def create_detail(self, object_list, bundle):
return bundle.obj.user == bundle.request.user
一切工作的問題。我認爲評論這兩行將允許用戶爲其他用戶創建對象,但是當我嘗試它時,我正確地獲得了401(UNAUTHORIZED)響應。
這是否意味着這兩條線是不必要的? Tastypie如何能夠正確確定我是否有權創建對象?
當我運行這個時,我發送了一個POST請求,'user'等於相應的URI(類似'/ api/v1/user/1 /')。我不確定如果Tastypie有問題確定
bundle.obj.user
當我這樣做。
將這兩行註釋掉是否安全? Tastypie是否使用其他方法授權用戶?
如果您要更改用戶擁有的行(行級授權),'bundle.obj.user == bundle.request.user'將返回true。那是你正在嘗試做什麼? –
是的。當我執行PUT請求時,這可以正常工作。但是,它在POST請求期間不起作用。 POST僅適用於刪除這兩行的情況。 – bwang88
這聽起來像一個錯誤。我會在Tastypie的Github頁面上報告這個問題。 –