【问题标题】:Update view using function based view使用基于函数的视图更新视图
【发布时间】:2017-12-16 05:10:44
【问题描述】:

如何将对象传递到模型表单中以在呈现页面时预填充字段?我想做一些类似于在 Django UpdateView 基于类的视图中构建但使用基于函数的视图。

【问题讨论】:

    标签: python django django-forms django-views


    【解决方案1】:

    只需从模型中获取对象并将该对象作为实例传递给表单。然后将表单传递给模板。像下面的例子一样写下你的观点。

    def func(request, id):
    
        object = Model.objects.get(id=id)
        form = ModelForm(instance=object)
    
        return render(request, 'my_template.html', {'form':form})
    

    【讨论】:

      【解决方案2】:

      在这里,我尝试了一些东西......

      def approveform(request, pk):
      
          if pk:
      
              form = Admission.objects.get(pk=pk)
      
              p = Admission.objects.get(pk=pk)
      
              form = ApproveForm(instance=form)
      
          return render(
              request,
              'Automation/formapprove.html',
              {
                  'year': datetime.now().year,
                  'form': form,
                  'test': p,
              }
          )
      

      【讨论】:

      • 如果pkFalse/None 会发生什么?您的变量formp 是全局定义的?
      猜你喜欢
      • 1970-01-01
      • 2013-01-25
      • 1970-01-01
      • 2014-08-07
      • 2014-02-16
      • 1970-01-01
      • 2023-03-06
      相关资源
      最近更新 更多