django - 如何在 django 中创建这样一个带有复选框的表?

标签 django python-3.x django-models django-forms django-views

我想要一个表格,每行都有一个带有 Django 的复选框,如图所示。下面提到了我的 Django view.py、models.py 和 HTML 文件。如何做到这一点? Django中有什么内置函数吗?

Table with check box

我的模型文件为:

class AppsDescription(db.Model):
    aws_response = aws_list_conf_api_call()

    CHOICES = [("yes", "YES"),
           ("no", "NO")]
    OPTIONS = list()

    for apps in aws_response:
        OPTIONS.append(('{name1}'.format(name1=apps.lower()), '{name2}'.format(name2=apps)), )

    name = db.CharField(max_length=256)
    description = db.TextField()
    plan_to_migrate = db.CharField(choices=CHOICES, max_length=256)
    # app_names = MultiSelectField(choices=OPTIONS)

    def __str__(self):
        return self.name

我的views.py为

def createapp(request):
    # import ipdb; ipdb.set_trace()
    form = DashboardForm()

    if request.method == "POST":
        form = DashboardForm(request.POST)
        list_of_inputs = request.POST.getlist("inputs")

        if form.is_valid:
            form.save(commit=True)
            return HttpResponseRedirect(reverse("aws:createapp"))

    server = aws_server_list_conf()

    return render(request, "createapp.html", {'server':server, 'form': form})

我的 html 文件为

<form method="POST">
      {{form.as_p}}

      <table>
        <tr>
          <th>Select</th>
          <th>Agent ID</th>
          <th>Configuration ID</th>
          <th>Host Name</th>
          <th>OS Name</th>
          <th>OS Version</th>
          <th>Source</th>
          <th>Time of Creation</th>
          <th>Type</th>
        </tr>

        {% for apps in server %}
        <tr>


          <td><input type="checkbox" name="" value=""></td>

          {% for k,v in apps.items %}

          <td>{{ v }}</td>

          {% endfor %}

        </tr>
        {% endfor %}

      </table>




      {% csrf_token %}
      <input type="submit" class="btn btn-info btn-lg" data-toggle="modal" data-target="#myModal" name="" value="submit">
      <div class="modal fade" id="myModal" role="dialog">
        <div class="modal-dialog">
            <div class="alert alert-success alert-dismissible">
                <a  class="close" data-dismiss="modal" aria-label="close">&times;</a>
                <strong>Success!</strong> App information stored Successfully.
              </div>
        </div>
      </div>

      </form>

我想要一个表格,每一行都带有复选框,并带有 django,如图所示。

最佳答案

您的 HTML 文件需要如下所示:

<form method="POST">
      {{form.as_p}}

      <table>
        <tr>
          <th>Select</th>
          <th>Agent ID</th>
          <th>Configuration ID</th>
          <th>Host Name</th>
          <th>OS Name</th>
          <th>OS Version</th>
          <th>Source</th>
          <th>Time of Creation</th>
          <th>Type</th>
        </tr>

        {% for apps in server %}
        <tr>




          {% for k,v in apps.items %}
          <td><input type="checkbox" name="selected_options" value="v.id"></td>
          <td>{{ v }}</td>

          {% endfor %}

        </tr>
        {% endfor %}

      </table>




      {% csrf_token %}
      <input type="submit" class="btn btn-info btn-lg" data-toggle="modal" data-target="#myModal" name="" value="submit">
      <div class="modal fade" id="myModal" role="dialog">
        <div class="modal-dialog">
            <div class="alert alert-success alert-dismissible">
                <a  class="close" data-dismiss="modal" aria-label="close">&times;</a>
                <strong>Success!</strong> App information stored Successfully.
              </div>
        </div>
      </div>

      </form>


关于django - 如何在 django 中创建这样一个带有复选框的表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54500112/

相关文章:

django - 如何仅在某些情况下禁用 Django 的 csrf 保护?

python - Django 查询集自定义顺序与指定位置上的一些对象

arrays - 如何在 Python 3 中转置数组?

django - 如何向灯具添加与 'through' 关系的 ManyToMany 字段?

database - Django : "Soft" ForeignField without database integrity checks

python - Django 有自动排序模型字段的方法吗?

django - 反向为 'edit',未找到任何参数。尝试了 1 个模式 : ['articles/edit/(?P<pk>[0-9]+)/$' ]

python - 具有基于Python的框架的多个独立博客帐户

python - 理解 *x ,= lst

python嵌套类