我已将行级授权添加到 Tastypie 资源,如下所示:
from tastypie.exceptions import ImmediateHttpResponse
from tastypie.http import HttpUnauthorized
class MyResource(ModelResources):
...
def is_authorized(self, request, object=None):
super(MyResource, self).is_authorized(request, object)
if object and (object.user != request.user):
raise ImmediateHttpResponse(response=HttpUnauthorized())
为简洁起见,我省略了通常的导入,只指定了与问题相关的导入。
我的问题是,有没有一种更清洁的方法来覆盖is_authorized
而不必导入ImmediateHttpResponse
and HttpUnauthorized
?在我看来,这些是实现细节,我应该能够简单地返回True
or False
。