Django - 如何为相关模型上的外键创建多个选择在 CreateView 上?

问题描述

我有这两个模型:

学生

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<div id="options">
  <div class="col s12  ">

    <label>Server</label>

    <div id="id_form-0-server">
      <ul>
        <li class="">
          <label>
                <input type="checkBox" name="form-0-server" value="ABC" id="id_form-0-server_0"> 
                <span>ABC-1-2</span>
              </label>
        </li>
        <li class="">
          <label>
                <input type="checkBox" name="form-0-server" value="EFD" id="id_form-0-server_1">
                <span>EFD-1-3</span>
              </label>
        </li>
        <li class="">
          <label>
                <input type="checkBox" name="form-0-server" value="KIS" id="id_form-0-server_2">
                <span>KIS-1-46</span>
              </label>
        </li>
        <li class="">
          <label>
                <input type="checkBox" name="form-0-server" value="Pnjs" id="id_form-0-server_3">
                <span>Pnjs-1</span>
              </label>
        </li>
        <li class="">
          <label>
                <input type="checkBox" name="form-0-server" value="PJSGRA" id="id_form-0-server_4">
                <span>PJSGRA-1-10</span>
              </label>
        </li>
        <li class="">
          <label>
                <input type="checkBox" name="form-0-server" value="KLSCV" id="id_form-0-server_5">
                <span>KLSCV-1</span>
              </label>
        </li>
      </ul>
    </div>
  </div>

class Student(models.Model):
    name = models.CharField(max_length=50,default='')
    class = models.ForeignKey(Class,related_name='students',on_delete=models.SET_NULL,blank=True,null=True)

用户创建新班级时,我需要他们能够选择将要加入班级的学生。他们应该能够在以后添加学生。我将如何创建此视图?

解决方法

试试这个,这意味着班级可以有很多学生

class Class(models.Model):
    code = models.CharField(primary_key=True,verbose_name='Code',max_length=50)
    models.ManyToManyField(Student)