django正在获取当前用户id

django正在获取当前用户id,django,post,get,request,Django,Post,Get,Request,我有一个迷你应用程序,用户可以登录,查看他们的个人资料,并相互关注。 “Follow”是一种关系,类似于虚拟社区中的普通“朋友”关系,但它不一定是互惠的,这意味着用户可以跟随用户,而无需用户跟随跟随跟随他的人。 我的问题是: 如果我是一个登录用户,并且我导航到一个配置文件X,然后按下“跟随”按钮,我如何获取当前配置文件id?(当前配置文件表示我,即登录用户,正在查看的配置文件。) 观点: def follow(request): if request.method == 'PO

我有一个迷你应用程序,用户可以登录,查看他们的个人资料,并相互关注。 “Follow”是一种关系,类似于虚拟社区中的普通“朋友”关系,但它不一定是互惠的,这意味着用户可以跟随用户,而无需用户跟随跟随跟随他的人。 我的问题是: 如果我是一个登录用户,并且我导航到一个配置文件X,然后按下“跟随”按钮,我如何获取当前配置文件id?(当前配置文件表示我,即登录用户,正在查看的配置文件。)

观点:

   def follow(request):
      if request.method == 'POST':
    form = FollowForm(request.POST)
    if form.is_valid():
    new_obj = form.save(commit=False)
    new_obj.initiated_by = request.user
    u = User.objects. what here?
    new_obj.follow = u   
    new_obj.save()
    return HttpResponseRedirect('.')    
   else:
       form = FollowForm()     
   return render_to_response('followme/follow.html', {
       'form': form,
       }, 
      context_instance=RequestContext(request))  

提前谢谢

尝试
请求.user.id
。但有一个更好的做法。让我想想

这是一个良好的开端,充满了良好的实践。
在您的情况下,请使用
request.user.id

如果您将用户的配置文件添加到表单中,您可以将其与帖子一起传递

有很多方法可以做到这一点。您可以在FollowForm中添加一个隐藏字段(作为实例传入概要文件)

您可以通过插入一个隐藏字段(如:

<input type="hidden" name="profile_id" value="{{ profile.id }}" />

或者,您的视图中可能已经有了配置文件的用户id?

是的。这样做的目的不是获取当前登录用户的id(在我上面的示例中,我已登录),而是获取我正在访问并希望遵循其配置文件的用户的id。非常感谢您的关注!好的,假设配置文件的url类似于/user/,那么跟踪某个人的操作可以恢复到url上的帖子,如/user//follow/其中id是要跟踪的人的user.id。是的。这似乎合乎逻辑,而且是正确的:)我现在就试试,然后公布结果。谢谢!:)不,我现在明白了:)问题是我在url中没有用户id,所以我不能从POST中获取它:(这似乎是对的,但我得到了一个错误:需要多个值才能解包,我不明白为什么我在u声明中有多个值。谢谢!
u = User.objects.get(request.POST['profile_id'])