1
我有一個讓瀏覽器編輯對象的頁面。該頁面顯示每個對象一個表單的表單集合,以及他們希望創建對象的一個空表單,並且我希望在每個預先存在的對象下都有一個標記爲「刪除」的複選框(也就是NOT最後一個,因爲它是額外的空格式)。Django從模板中的自定義html輸入中獲取數據
我下面的代碼添加到我的模板:
{% for form in formset %}
{{ form.as_p }}
{% if forloop.last %}
{% else %}
Delete?<input type="checkbox" name="delete" value="delete"><br>
{% endif %}
{% endfor %}
這顯示該複選框,但我不知道如何獲取關於是否不是框中數據檢查,當我處理表單。
對於背景,我使用modelformset_factory(MyClass, extra=1)
創建了模板集,我不只是使用can_delete
,因爲我不希望刪除複選框出現在我的最後一個空格式下,所以我寧願只添加一個如果可能的話,直接在模板中添加額外的輸入。
我該如何獲得有關該盒子是否已被檢查的數據?
不,我恐怕這是行不通的。我需要獲取與每個刪除複選框相關聯的對象,但即使列出了已按照順序檢查過的那些框也是可行的。 request.POST ['delete']返回一個字符串'delete',不管有多少個或哪些方塊已被檢查過。 – stillLearning
對不起,不能在評論中問你,所以有我的錯誤。看看我的版本:從這裏你會得到所有選中的複選框列表。然後,您必須將值設置爲對象ID,因此您將獲得帶有選中對象的ID的列表。 – Dracontis
如果你走這條路線,確保你檢查了ID以確保它實際上在formset中。您也可以使用表單編號(forloop.counter0),然後拉取相關的表單。實例 –