이것은 prepend_urls
의 목적입니다. 기존 방법에 사용자 정의 끝점을 추가 할 수 있습니다. 기본적으로 일반보기처럼 작동하지만 Resource에서 필요한 모든 함수를 호출 할 수 있습니다. -또는 기존 Tastypie 함수에 피기 백을 반환하면 풍부한 객체를 반환 할 수 있습니다. 내가 경우,
def prepend_urls(self):
return [
#...
url(r"^(?P<resource_name>%s)/is_authenticated?$" % (self._meta.resource_name), self.wrap_view('is_authenticated')),
#...
]
# ...other methods in your Resource...
def is_authenticated(self, request, **kwargs):
if self._meta.authentication.is_authenticated(request):
return HttpResponse("1")
else:
return HttpResponse("0")
을 또는 : 나는 User
자원이 있고 사용자가 현재 1
또는 0
을 반환하여 인증 여부를 결정하기 위해 엔드 포인트를 제공하기를 원한다면
예를 들어, 나는이 작업을 수행 할 것 실제로 인증 된 사용자의 실제 사용자 리소스를 반환하기 위해 /user/?id=[authenticated user's ID]
에 대한 호출을 효과적으로 시뮬레이트하면 return HttpResponse("1")
을 return self.get_detail(request, id=request.user.id)
으로 바꿀 수있었습니다 (예 : /user/?id=[authenticated user's ID]
).
출처
2013-08-17 18:18:50
cpf
'ModelResource'를 사용할 필요가 없으며 http://django-tastypie.readthedocs.org/en/latest/resources.html#why-resource-vs-를 상속 할 수있는'Resource' 클래스가 있습니다. modelresource –
@HeddevanderHeide'ModelResource'보다는 오히려'Resource'를 언급 한 적이 없으며, 만약 당신이 살펴 본다면,'Resource'조차도 제가 관심이없는 일종의 데이터 모델을 가정합니다. 그래서 이것은 정말로 도움이되지 않습니다. –