通过复选框传递值元组

Passing a Tuple of Values through a Checkbox

我有一个组织项目列表,用户可以使用复选框从中进行选择。我正在尝试为每个选中的复选框传递一个值元组,以便我可以获得有关项目本身和项目所属组的信息。我试过使用隐藏字段,但似乎无论是否选中相应的复选框,隐藏字段值都会被传递。

如果复选框被选中,我需要引文 ID 和父软件。我可以为每个选中的复选框传递一个 (citation.id, sw) 的元组吗?因为可以选中多个复选框,所以将所有这些作为元组列表一起传递?比如:[(citation1.id, sw1), (citation2.id, sw2), ] ?我需要此信息。

感谢您的帮助!

select_citations.html

{% for sw in software %}
    {{sw}}
    {% for citation in all_citations %}
        <input type="checkbox" name="myselection[]" value="{{citation.id}}">
        <input type="hidden" name="myselection[]" value="{{sw}}">
    {% endfor %}
{% endfor %}

将两个模型的 ID 组合成复选框的单个值:

{% for sw in software %}
  {{sw}}
  {% for citation in all_citations %}
    <input type="checkbox" name="selection" value="{{citation.id}}-{{sw.id}}">
  {% endfor %}
{% endfor %}

然后在视图中解构这个值:

ids = [value.split('-') for value in request.POST.getlist('selection')]