在Django中,预先选择表单选项标签的正确方法是什么?

时间:2019-04-05 19:51:20

标签: django python-3.x drop-down-menu option

我正在使用Django和Python 3.7。我想在模板上创建一个SELECT菜单,所以我尝试了这个...

    <select id="website_id" name="website_id">
        <option value="">Select a website</option>
{% for website in websites %}
        <option value="{{ website.id }}" {{ 'selected' if website_id == website.id else '' }}>{{ website.path }}</option>
{% endfor %}
    </select>

但是我得到这个错误

Could not parse the remainder: ' if website_id == website.id else ''' from ''selected' if website_id == website.id else '''

它使我的“ if”表达式窒息。设置选项标签的“选定”属性的首选方法是什么?

3 个答案:

答案 0 :(得分:0)

正确的语法如下:

{% if CONDITION %}A{% endif %}

因此,在您的情况下,我们将这样实现:

    <select id="website_id" name="website_id">
        <option value="">Select a website</option>
        {% for website in websites %}
            <option value="{{ website.id }}" {% if website_id == website.id %}selected{% endif %}>{{ website.path }}</option>
        {% endfor %}
    </select>

答案 1 :(得分:0)

正确的方法是使用Django表单。但是,如果您坚持手动操作,则需要一个if标记

 {% if website_id == website.id %} selected {% endif %}

答案 2 :(得分:0)

<select name="qf">
    <option value="10th" {% if '10th' %} selected {% endif %}>10th</option>
    <option value="12th" {% if '12th' %} selected {% endif %}>12th</option>
</select>
相关问题