Невозможно создать новый объект - create () принимает ровно 1 аргумент (2 дано) - PullRequest
2 голосов
/ 28 января 2011

Я пытаюсь создать новый объект из значений, подаваемых из формы.Вот код:

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

Вот ошибка, которую я получаю:

TypeError at / problemy / pridat / ulozit /
create () принимает ровно 1 аргумент (2дано)
Метод запроса: POST
URL запроса: http://localhost:8000/problemy/pridat/ulozit/
Версия Django: 1.2.3
Тип исключения: TypeError
Значение исключения:
create () принимает ровно 1 аргумент(2 дано) Местоположение исключения: views.py в Issue_Save, строка 20

Код в строке 20:

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

Я действительно застрял здесь.

1 Ответ

3 голосов
/ 28 января 2011

Вы не сказали нам, что именно IssueForm.Если это ModelForm, вы можете использовать вместо него .save метод:

IssueForm(request.POST).save()

Если это обычная форма, используйте это:

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

Примечание: ** - распаковка аргумента (см. здесь )

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...