【问题标题】:Checkbox Value of Array in DjangoDjango中数组的复选框值
【发布时间】:2019-01-08 07:25:38
【问题描述】:

我正在使用复选框输入字段将数组传递到我的视图中。在我看来,我如何使用value="1" or "0" 获得该数组accesses[value][value]。在我看来,我也在使用request.POST.getlist('accesses'),但它给了我价值,那么我该如何获得数组。示例 - accesses[3][25] 值。

模板.html

<input type="checkbox" name="accesses[3][25]" value="1" checked autocomplete="off">
<input type="checkbox" name="accesses[2][15]" value="1" autocomplete="off">
<input type="checkbox" name="accesses[4][95]" value="1" autocomplete="off">
<input type="checkbox" name="accesses[5][10]" value="1" checked autocomplete="off">

查看.py

def AclView(request):
   accesses = request.POST.getlist('accesses')

【问题讨论】:

    标签: django django-models django-forms django-templates django-views


    【解决方案1】:

    Django 不会从字段名称解析[] 以构建列表(如果我没记错的话,就像 PHP 那样)。要获取值列表,您必须在相同的键下提交相同的值。试试这个:

    <input type="checkbox" name="accesses" value="1" checked autocomplete="off">
    <input type="checkbox" name="accesses" value="1" autocomplete="off">
    <input type="checkbox" name="accesses" value="1" autocomplete="off">
    <input type="checkbox" name="accesses" value="1" checked autocomplete="off">
    
    def AclView(request):
       accesses = request.POST.getlist('accesses')
    

    【讨论】:

      【解决方案2】:

      您没有名为 accesses 的列表,您有四个单独的输入,称为“accesses[3][25]”等。因此应该使用这些名称来访问它们。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-11-15
        • 2013-05-12
        • 1970-01-01
        • 2020-10-06
        • 1970-01-01
        相关资源
        最近更新 更多