无法创建新对象 - create()只需要1个参数(给定2个)

时间:2011-01-28 11:55:55

标签: django

我正在尝试从表单提供的值创建新对象。这是代码:

def issue_save(request):
    issue = Issue.objects.create(IssueForm(request.POST))
    issue.save(commit=True)
    return HttpResponseRedirect(reverse("main.views.index"))

这是我得到的错误:

/ problemy / pridat / ulozit /
的TypeError create()只需1个参数(2个给定)
请求方法:POST
请求网址:http://localhost:8000/problemy/pridat/ulozit/
Django版本:1.2.3
异常类型:TypeError
例外价值:
create()只需1个参数(给定2个) 例外位置:issue_save中的views.py,第20行

第20行的代码:

issue = Issue.objects.create(IssueForm(request.POST))

我真的被困在这里了。

1 个答案:

答案 0 :(得分:3)

您没有告诉我们究竟是什么IssueForm。如果是ModelForm,则可以使用其.save方法:

IssueForm(request.POST).save()

如果是普通表格,请使用:

issue = Issue.objects.create(**IssueForm(request.POST).cleaned_data)

注意: **是参数解包(参见here