예상대로 작동하는 다양한 종점을 정의하는 Tastypie ModelResource
이 있습니다.Django + Tastypie - user_logged_in 신호가 작동하지 않습니다.
지금이 ModelResource
이 BasicAuthentication
을 갖도록 구성했습니다
class Meta:
authentication = BasicAuthentication()
내가 장고 관리자 인터페이스를 통해 테스트 사용자의 몇 가지를 정의했다.
from django.core.signals import request_finished
from django.contrib.auth.signals import user_logged_in
from django.dispatch import receiver
@receiver(user_logged_in)
def on_login(sender, request, user, **kwargs):
print('******* LOGIN DETECTED *********')
@receiver(request_finished)
def on_request_finished(sender, **kwargs):
print('******* REQUEST FINISHED *******')
이 apps.py
내 AppConfig
에 의해 성공적으로로드 :
from django.apps import AppConfig
class MyAppConfig(AppConfig):
name = 'myapp'
verbose_name = 'verbose description of myapp'
def ready(self):
import myapp.signals
I
은 Django 1.7 Documentation 당, 나는 내가 테스트 신호의 몇 가지를 등록하는 signals.py
을 만들었습니다 Requests
라이브러리를 사용하여 내 테스트 사용자 중 하나에게 기본 인증 자격 증명을 제공하여 API와 성공적으로 통신하십시오.
auth = HTTPBasicAuth(username, getpass('Enter password: '))
response = requests.get(self.url(endpoint), auth=self.auth, params = params)
REQUEST FINISHED
인쇄물은 Django 서버의 출력에 표시되지만 LOGIN DETECTED
에는 표시되지 않습니다.
Tastypie를 사용할 때 수동으로 로그인 신호를 실행해야합니까, 아니면 BasicAuthentication
이외의 다른 inbuilt/custom Authentication
클래스를 사용해야합니까? 즉, user_logged_in
신호가 자동으로 실행되지 않을 것으로 예상됩니까?
모든 정보는 크게 감사하겠습니다.