0

我有一个表单,它是某个模型 X 的实例。现在,如果我在另一个视图中处理表单提交(POST),我如何在视图中访问表单的实例。一个视图用于创建表单,另一个视图用于创建表单视图用于处理表单。

4

2 回答 2

1

文档

此外,绑定到模型对象的模型表单实例将包含一个 self.instance 属性,该属性使模型表单方法可以访问该特定模型实例。

def myview(request):
    if request.method == "POST":
        form = MyModelForm(request.POST,request.FILES)
        # form.instance -- this is the model
于 2012-07-01T13:02:44.300 回答
0

您可以简单地将表单对象传递给辅助视图:

def view_one(request, slug):
    if request.method == 'POST':
        obj = get_object_or_404(Model, slug=slug)
        model_form = MyModelForm(request.POST, instance = obj)
        return view_two(request, form=model_form) 

def view_two(request, form=None):
    if form:
        obj = form.save(commit=False)
        obj.some_attribute = "Foo"
        obj.save()
        return render_to_response(...)
于 2012-07-01T13:04:17.200 回答