删除django ModelForm中的实例
Delete instance in django ModelForm
我正在尝试删除 django ModelForm 中的实例表单,但它没有删除,
不过,更新部分工作正常。
我的views.py:
def update_component(request, pk):
component = Component.objects.all()
component_id = Component.objects.get(id=pk)
form = ComponentModelForm(instance=component_id)
if request.method=='POST' and 'form-update' in request.POST:
form = ComponentModelForm(request.POST,request.FILES, instance=component_id)
if form.is_valid():
form.save()
return HttpResponseRedirect(request.path_info)
if request.method=='POST' and 'form-delete' in request.POST:
form.delete()
return redirect('/maintenance')
context = {
'components': component,
'form': form,
'component_id':component_id,
}
return render(request, 'update_component.html', context)
删除表单:
<form class="component-delete-button"><input name="form-delete" type="submit"
class="button1" value='Delete Component' /></form>
删除项目不需要表单:表单是一种处理 HTML 表单输入并将其转换为更易于 Python 访问的数据的方法。
在删除的情况下,您删除实例,因此:
def update_component(request, pk):
component = Component.objects.all()
component_id = Component.objects.get(id=pk)
form = ComponentModelForm(instance=component_id)
if request.method=='POST' and 'form-update' in request.POST:
form = ComponentModelForm(request.POST,request.FILES, instance=component_id)
if form.is_valid():
form.save()
return HttpResponseRedirect(request.path_info)
if request.method=='POST' and 'form-delete' in request.POST:
<strong>component_id.delete()</strong>
return redirect('/maintenance')
context = {
'components': component,
'form': form,
'component_id':component_id,
}
return render(request, 'update_component.html', context)
我正在尝试删除 django ModelForm 中的实例表单,但它没有删除, 不过,更新部分工作正常。
我的views.py:
def update_component(request, pk):
component = Component.objects.all()
component_id = Component.objects.get(id=pk)
form = ComponentModelForm(instance=component_id)
if request.method=='POST' and 'form-update' in request.POST:
form = ComponentModelForm(request.POST,request.FILES, instance=component_id)
if form.is_valid():
form.save()
return HttpResponseRedirect(request.path_info)
if request.method=='POST' and 'form-delete' in request.POST:
form.delete()
return redirect('/maintenance')
context = {
'components': component,
'form': form,
'component_id':component_id,
}
return render(request, 'update_component.html', context)
删除表单:
<form class="component-delete-button"><input name="form-delete" type="submit"
class="button1" value='Delete Component' /></form>
删除项目不需要表单:表单是一种处理 HTML 表单输入并将其转换为更易于 Python 访问的数据的方法。
在删除的情况下,您删除实例,因此:
def update_component(request, pk):
component = Component.objects.all()
component_id = Component.objects.get(id=pk)
form = ComponentModelForm(instance=component_id)
if request.method=='POST' and 'form-update' in request.POST:
form = ComponentModelForm(request.POST,request.FILES, instance=component_id)
if form.is_valid():
form.save()
return HttpResponseRedirect(request.path_info)
if request.method=='POST' and 'form-delete' in request.POST:
<strong>component_id.delete()</strong>
return redirect('/maintenance')
context = {
'components': component,
'form': form,
'component_id':component_id,
}
return render(request, 'update_component.html', context)