如何在使用FilterView Mixin的类视图上处理Django-tables 2上提交



我有一个django-tables2 filterView。过滤器以一种形式模板:

{% if filter %}
    <form action="" method="get" class="form form-inline">
        {% bootstrap_form filter.form layout='inline' %}
        {% bootstrap_button 'filter' %}
    </form>
{% endif %}

我在每行中添加了一个复选框字段,我的表格中的表格:

<form action="table_selection" method="get" class="form form-inline">
    {% csrf_token %}
    {% render_table table 'django_tables2/bootstrap.html' %}
    <button class="btn btn-primary red" type="submit" >Submit Rows</button>
</form>

提交时,我会收到以下记录消息:

GET /three_pl/threepl_fulfilments_filter/table_selection?csrfmiddlewaretoken=...
&select_row=198&select_row=158&select_row=159 

因此,select_rows非常有趣。但是我迷失了班级的视图,我无法努力处理如何处理表单提交。

这是我的观点:

class FilteredThreePLFulfimentsView(SingleTableMixin,FilterView):
    table_class = ThreePL_order_fulfilmentsTable
    model = ThreePL_order_fulfilments
    template_name = "three_pl/ThreePLFulfilmentsFilter.html"  #three_pl/templates/three_pl/ThreePLFulfilmentsFilter.html
    filterset_class = ThreePLFulfilmentsFilter

答案:为/table_selection设置URL。在桌面渲染的URL之前进行。

...    url(r'^threepl_fulfilments_filter/table_selection',views.three_pl_fulfilments_selection,name='threepl_fulfilments_selection'),
...

和视图:

if request.method == 'GET':
    try:
        selected_rows = request.GET.getlist('select_row')