我已经声明了一个表,并希望获取使用checkboxfield检查的行的值。任何帮助,我该如何在我的 View 中编写此事件,以便每次我选择一行并单击Submit按钮时,它将返回该行的值。代码如下所示:
class mytables(tables.Table):
new_database = tables.CheckBoxColumn()
student =tables.Column(accessor='Student')
Class = tables.Column(accessor='class')
在我的模板中有一个提交按钮。
最佳答案
您需要为CheckBoxColumn
选择合适的值。通常,如果要显示查询集,则将每个对象的pk
用作CheckBoxColumn
。在您的情况下,它看起来像:
class EnrollmentTable(tables.Table):
selection = tables.CheckBoxColumn(accessor='pk')
student = tables.Column()
class = tables.Column()
然后,您需要在表格中呈现表格,以便用户可以提交表格,例如:
<form action="/someurl/" method="post">
{% load render_tables from django_tables2 %}
{% render_table table %}
<input type="submit"/>
</form>
然后,您需要连接到
/someurl/
的 View 。在您的情况下, View 将需要查看POST
变量selection
:def someview(request):
if request.method == "POST":
pks = request.POST.getlist("selection")
selected_objects = SomeModel.objects.filter(pk__in=pks)
# do something with selected_objects
else:
# ...
关于django - 如何从Django_tables2行获取信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10850316/