Django 删除表单集
Django delete formset
我有一个模板,用户可以在其中搜索要删除的一些记录。
我在尝试弄清楚如何从模型中删除多条记录时遇到了麻烦。
def XMLFieldsView(request):
if request.method == 'POST':
lista = request.POST.getlist('eliminar')
""" Here I am lost """
else:
lista = 'nada'
form = BuscarServicioForm()
idxml = request.GET.get('id_xml')
tabla = XMLFORMTable(XML_FORM.objects.filter(id_xml = 00))
try:
idxml = idxml
except ValueError:
idxml = 00
if idxml:
tabla = XMLFORMTable(XML_FORM.objects.filter(id_xml = idxml))
RequestConfig(request,paginate={"per_page":60}).configure(tabla)
return render_to_response('listacampos.html',
{'table':tabla,'form':form,'lista':lista},
context_instance=RequestContext(request))
用户使用表单
BuscarServicioForm
pick a group of records, where he can choose which records to delete.
但如果我需要使用表单集来执行此操作,或者我可以从 table 中获取值,将 HTML table 转换为表单
<form method="POST" id="table_form">
<table >
....
</table>
<input type="submit">
</form>
并获取post数据删除记录。
我正在使用 django-tables2 以这种方式呈现 table:
TEMPLATE_CHECK = """
<span class="input-group-addon">
<input type="checkbox" id="id_eliminar" name="eliminar">
</span>
"""
class XMLFORMTable(tables.Table):
eliminar = tables.TemplateColumn(TEMPLATE_CHECK,verbose_name='Eliminar')
class Meta:
model = XML_FORM
exclude = ['id_form','obs']
我正在考虑使用表单集,但我不知道该怎么做。
请提供任何建议或指导
提前致谢
html 模板必须知道对象的 pk 才能获取对象列表。
class XMLFORMTable(tables.Table):
eliminar = tables.CheckBoxColumn(accessor='pk')
class Meta:
model = XML_FORM
exclude = ['id_form','obs']
如果您将 pk 赋予复选框的值,您将检索选中元素的值列表。
import render
def XMLFieldsView(request):
if request.method == 'POST':
lista = request.POST.getlist('eliminar')
""" Here I am lost """
for pk in lista:
get_object_or_404(ElObjeto, pk=pk).delete()
else:
....
return render(request, listacampos.html,{'table':tabla,'form':form,'lista':lista})
Also render,是 render_to_response 的快捷方式,它将自动使用 RequestContext
我有一个模板,用户可以在其中搜索要删除的一些记录。
我在尝试弄清楚如何从模型中删除多条记录时遇到了麻烦。
def XMLFieldsView(request):
if request.method == 'POST':
lista = request.POST.getlist('eliminar')
""" Here I am lost """
else:
lista = 'nada'
form = BuscarServicioForm()
idxml = request.GET.get('id_xml')
tabla = XMLFORMTable(XML_FORM.objects.filter(id_xml = 00))
try:
idxml = idxml
except ValueError:
idxml = 00
if idxml:
tabla = XMLFORMTable(XML_FORM.objects.filter(id_xml = idxml))
RequestConfig(request,paginate={"per_page":60}).configure(tabla)
return render_to_response('listacampos.html',
{'table':tabla,'form':form,'lista':lista},
context_instance=RequestContext(request))
用户使用表单
BuscarServicioForm pick a group of records, where he can choose which records to delete.
但如果我需要使用表单集来执行此操作,或者我可以从 table 中获取值,将 HTML table 转换为表单
<form method="POST" id="table_form">
<table >
....
</table>
<input type="submit">
</form>
并获取post数据删除记录。
我正在使用 django-tables2 以这种方式呈现 table:
TEMPLATE_CHECK = """
<span class="input-group-addon">
<input type="checkbox" id="id_eliminar" name="eliminar">
</span>
"""
class XMLFORMTable(tables.Table):
eliminar = tables.TemplateColumn(TEMPLATE_CHECK,verbose_name='Eliminar')
class Meta:
model = XML_FORM
exclude = ['id_form','obs']
我正在考虑使用表单集,但我不知道该怎么做。
请提供任何建议或指导
提前致谢
html 模板必须知道对象的 pk 才能获取对象列表。
class XMLFORMTable(tables.Table):
eliminar = tables.CheckBoxColumn(accessor='pk')
class Meta:
model = XML_FORM
exclude = ['id_form','obs']
如果您将 pk 赋予复选框的值,您将检索选中元素的值列表。
import render
def XMLFieldsView(request):
if request.method == 'POST':
lista = request.POST.getlist('eliminar')
""" Here I am lost """
for pk in lista:
get_object_or_404(ElObjeto, pk=pk).delete()
else:
....
return render(request, listacampos.html,{'table':tabla,'form':form,'lista':lista})
Also render,是 render_to_response 的快捷方式,它将自动使用 RequestContext