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

问题描述 投票:0回答:2

我正在使用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”表达式上窒息。设置选项标签的“selected”属性的首选方法是什么?

django python-3.x drop-down-menu option
2个回答
0
投票

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

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

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>

0
投票
<select name="qf">
    <option value="10th" {% if '10th' %} selected {% endif %}>10th</option>
    <option value="12th" {% if '12th' %} selected {% endif %}>12th</option>
</select>
© www.soinside.com 2019 - 2024. All rights reserved.