Programming

Django에서 현재 로그인 한 사용자의 사용자 ID를 얻는 방법은 무엇입니까?

procodes 2020. 8. 5. 20:26
반응형

Django에서 현재 로그인 한 사용자의 사용자 ID를 얻는 방법은 무엇입니까?


현재 로그인 한 사용자의 아이디를 얻는 방법?

에서 models.py:

class Game(models.model):
    name = models.CharField(max_length=255)
    owner = models.ForeignKey(User, related_name='game_user', verbose_name='Owner')

에서 views.py:

gta = Game.objects.create(name="gta", owner=?)

먼저 당신이 가지고 있는지 확인 SessionMiddleware하고 AuthenticationMiddleware미들웨어이 추가 MIDDLEWARE_CLASSES설정.

전류 userrequest물체에 있으며 다음과 같이 얻을 수 있습니다.

def sample_view(request):
    current_user = request.user
    print current_user.id

request.userUser현재 로그인 한 사용자를 나타내는 객체 를 제공합니다 . 사용자가 현재 로그인하지 않은 경우 request.user의 인스턴스로 설정됩니다 AnonymousUser. 다음과 같이 필드와 구분할 수 있습니다 is_authenticated.

if request.user.is_authenticated:
    # Do something for authenticated users.
else:
    # Do something for anonymous users.

다음 코드를 사용하여 현재 로그인 한 사용자에 액세스 할 수 있습니다.

request.user.id

귀하의 관점에서 Django의 Auth User를 참조한다고 가정 하십시오.

def game(request):
  user = request.user

  gta = Game.objects.create(name="gta", owner=user)

참고 URL : https://stackoverflow.com/questions/12615154/how-to-get-the-currently-logged-in-users-user-id-in-django

반응형