如何获取用户ID

2024-06-16 13:10:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用Django开发一个网站。我很难处理代码,如何在不传递URL中的主键(ID,pk)的情况下获取用户ID。下面的代码并没有为我提供获取特定用户ID的解决方案。当我打印(用户)时,它打印当前登录的用户。有没有办法获取其他用户的ID

def home(request):
    p=Profile.object.filter(user=request.user)
    u=p.user
    send_request=FriendRequest.objects.filter(from_user=p.user)

def send_request(request, id):
    user=get_object_or_404(User, id=id) 
    frequest=FriendRequest.get_or_creat(from_user=request.user, to_user=user).first()

    path('home', home_view, name='home')

<a href='{% url 'site:send_request'  profile.user.id %}'>Add friend<a>

Tags: or代码用户fromsendidhomeget
1条回答
网友
1楼 · 发布于 2024-06-16 13:10:16

使用带有POST方法的表单,并将用户id作为参数发送给用户,但对用户隐藏

<form method="post" action="{% url 'your_url' %}">
    {% csrf_token %}
    <input type="hidden" name="user_id" value="{{ user_id }}" />
    <button type="submit">Add Friend</button>
</form>

您可以像这样访问视图中的参数

request.POST.get('user_id')

相关问题 更多 >