it-swarm.com.ru

Как получить идентификатор пользователя, вошедшего в систему в данный момент в Django?

Как получить идентификатор текущего вошедшего в систему пользователя?

в 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=?)
100
k44

Сначала убедитесь, что в настройках MIDDLEWARE_CLASSES добавлены промежуточные программы SessionMiddleware и AuthenticationMiddleware.

Текущее user находится в объекте request, вы можете получить его:

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

request.user предоставит вам объект User, представляющий текущего пользователя, вошедшего в систему. Если пользователь не вошел в систему, request.user будет установлен на экземпляр AnonymousUser. Вы можете различить их с помощью is_authenticated(), например так:

if request.user.is_authenticated():
    # Do something for authenticated users.
else:
    # Do something for anonymous users.
160
K Z

Вы можете получить доступ к текущему зарегистрированному пользователю, используя следующий код:

request.user.id
14
sriram veeraghanta

Предполагая, что вы имеете в виду Django Auth User , по вашему мнению:

def game(request):
  user = request.user

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