Django 如何使用有效的表单数据在数据库中创建对象?

Django 如何使用有效的表单数据在数据库中创建对象?,django,Django,我正在尝试创建一个帮助函数来验证表单。如果表单有效,那么我将在数据库中创建一个对象。该函数包含三个参数:请求、表单和模型 def form_validate(request, form, model): form = form(request.POST) print form if form.is_valid(): print "the form is valid" # create object using valid form else: print

我正在尝试创建一个帮助函数来验证表单。如果表单有效,那么我将在数据库中创建一个对象。该函数包含三个参数:请求、表单和模型

def form_validate(request, form, model):
  form = form(request.POST)
  print form
  if form.is_valid():
    print "the form is valid"
    # create object using valid form
  else:
    print "the form is not valid"
    # send back items
    print form.errors.items()

如果表单有效,我想使用表单数据创建一个新模型。我该怎么做?我试过看Django医生(https://docs.djangoproject.com/en/dev/topics/forms/)但是我找不到答案。

您可能会想看看ModelForms:

正如David Wolever所说,使用ModelForms是显而易见的方法

您还可以将已清理的_数据字典传递给模型构造函数(假设字段相同):


然而,ModelForms确实是最简单的方法,但您可能有兴趣阅读Django的源代码,看看它们是如何工作的。

您应该回到文档中来。我知道这是一个老问题,但我在google遇到了这个问题,仍然有疑问:如果没有“表单”,我们该怎么办,但是,由于来自外部域的一个带有有效负载的调用,所以我们只能处理POST数据,所以我们只能处理POST数据?
def form_validate(request, form, model):
    form = form(request.POST)
    print form
    if form.is_valid():
        print "the form is valid"
        obj = model(**form.cleaned_data)
        obj.save()
    else:
        # etc