2012-03-30 74 views
1

我正在用tastypie創建我的第一個API,我想知道如何設置只有所有者才能編輯它自己的資源。Tastypie - 如何僅授權所有者編輯資源

我應該嗎?

  • 創建一個基本的身份驗證像this例如
  • 檢查,如果request.user是一樣的resource.owner
  • 檢查,如果該請求是PUT

是這個最好的辦法嗎?

謝謝!

回答

1

是的,你所描述的是一個好方法。或者,您可以操縱更新中涉及的方法:put_detail()obj_update(),但是您的想法可能稍微清晰一些,因爲畢竟您試圖做的事顯然是authorization。因此,代碼屬於Authorization類,而不屬於實際更新對象的方法,因爲當用戶未被授權更新給定資源時甚至不應調用這些方法。

您可能還想看看現在有一個creating "per-user" resoures「配方」的Tastypie Cookbok,它也描述瞭如何列出屬於給定用戶的資源。