表单中用于筛选对象的Django复选框

2024-10-01 15:32:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个医生数据库,正在尝试实现过滤器。我想为在线预约添加一个复选框,人们可以选择它来过滤所有可用于在线预约的医生。在Doctor实体中,我有一个boolean字段bookinReq,它默认为False。在线预约的医生有这个领域的真实性。我不知道如何在表单中实现复选框。在

在文档列表.html在

        <select class="form-control" id="speciality" name="speciality">
          <option value="All Doctors"><b>Choose Speciality...</b></option>
          {% for value, text in form.speciality.field.choices %}
            {% if value == s_name %}
              <option selected="selected" value="{{ value }}">{{ text }}</option>
            {% else %}
              <option value="{{ value }}">{{ text }}</option>
            {% endif %}
          {% endfor %}
        </select>



        <select class="form-control" id="language" name="language">
            <option><b>Choose Language</b></option>
            {% for l in languages %}
              {% if l.name == l_name %}
                <option selected="selected" value="{{ l }}">{{ l }}</option>
              {% else %}
                <option value="{{ l }}">{{ l }}</option>
              {% endif %}
            {% endfor %}
        </select>
         <div class="form-control" id="bookinReq" name="bookinReq">
            <label>
               <input type="checkbox" name="bookingReq">  Online Booking
            </label>
          </div>

        <span class="input-group-btn">
          <button class="btn btn-primary" type="submit" id="ss-submit">Search</button>
        </span>
      </form>          

在视图.py在

^{pr2}$

在表单.py在

class DropdownSelectionForm(forms.Form):
    speciality = forms.ChoiceField(choices=MY_CHOICES, widget = forms.Select, required = False)

Tags: textnameformidvalueformsselectcontrol
1条回答
网友
1楼 · 发布于 2024-10-01 15:32:31

要声明一个布尔值非常简单,您只需添加这一行代码。在

bookinReq = forms.BooleanField(required=True, initial=False)

除了你的问题,在未来的某个时候,没有什么事情可以帮你。在

^{pr2}$

呈现表单的方式需要大量代码。你应该考虑从dj网站看表单渲染。一个更好的方法是脆的形式,一旦你使用它,你就不想再使用其他任何东西了。在

https://docs.djangoproject.com/en/1.8/topics/forms/http://django-crispy-forms.readthedocs.org/en/latest/

<select class="form-control" id="speciality" name="speciality">
  <option value="All Doctors"><b>Choose Speciality...</b></option>
  {% for value, text in form.speciality.field.choices %}
    {% if value == s_name %}
      <option selected="selected" value="{{ value }}">{{ text }}</option>
    {% else %}
      <option value="{{ value }}">{{ text }}</option>
    {% endif %}
  {% endfor %}
</select>

# here is some what equivalent version
<select class="form-control" id="speciality" name="speciality">
    {% csrf_token %}
    {{ form }}
    <input type="submit" value="Submit" />
</form>

这都是我的,祝你好运:D

相关问题 更多 >

    热门问题