django将用户对象设置为表单提交的字段值

时间:2016-04-22 23:45:38

标签: django

我的模型具有Users模型所需的外键。在表单提交上,我想将登录用户保存为提交者。

在我看来:

def myview(request):
  if request.method == 'POST':
    form = MyForm(request.POST)
    myuser = User.objects.get(id=request.user.id)
    form.submitter_field = myuser
    if form.is_valid()
      #this prints a failed message saying submitter_field is required

1 个答案:

答案 0 :(得分:0)

这样的事可能适合你。您可以从请求会话中获取用户ID,而无需运行用户查询。

if form.is_valid(): 
    f = form.save(commit=false)
    f.submitter_field = request.user
    f.save()