擅长:python、mysql、java
<p>与ruddra的解决方案类似,实现这一点的最简单方法可能是执行视图中的大部分逻辑:</p>
<pre><code>adults = [(element, element.number == data.numadults) for element in adult_list]
</code></pre>
<p>这将为您提供一个包含两个<code>(<adult object>, <boolean>)</code>元组的列表,其中布尔值表示您试图在模板中使用的条件,以决定是否使用<code>selected</code>属性。你知道吗</p>
<p>在模板中,您可以将条件仅基于该布尔值:</p>
<pre><code><option value=''>No. of Adult</option>
{% for i, selected in adult_range %}
{% if selected %}
<option value="{{ i }}" selected>{{ i }}</option>
{% else %}
<option value="{{ i }}">{{ i }}</option>
{% endif %}
{% endfor %}
</code></pre>
<p>请注意,您也可以在html标记中内联计算条件,如下所示:</p>
<pre><code><option value="{{ i }}" {% if selected %} selected {% endif %}>
</code></pre>
<p>这可能会产生更可读的代码。你知道吗</p>