3
假設我有以下的模型 -添加IsAuthenticatedOrReadOnly許可
class Person(models.Model):
name = models.CharField(max_length=200)
clubs = models.ManyToManyField(Club,related_name = 'people')
date = models.DateTimeField(default=datetime.now)
def __str__(self):
return self.name
用來創建一個REST API
。
views.py
class PersonDetail(generics.RetrieveUpdateDestroyAPIView):
serializer_class = PersonSerializer
def get_object(self):
person_id = self.kwargs.get('pk',None)
return Person.objects.get(pk=person_id)
如何添加權限,以便只有經過身份驗證的用戶可以從API的人員列表中添加,更新或刪除檢索對象。對於非授權用戶來說只讀權限。我試着通過文檔,但它都很混亂。有人可以解釋嗎?
那不行。我仍然可以作爲匿名用戶刪除。 – qwertp
請再次檢查,因爲它只允許匿名用戶使用'GET','HEAD'和'OPTIONS'請求,而不允許'DELETE'請求。這裏是官方文件[鏈接](http://www.django-rest-framework.org/api-guide/permissions/#isauthenticatedorreadonly) –