У меня новичок, есть повторяющийся раздел HTML, который, я уверен, можно написать более аккуратно. Не уверен, что это лучшее решение, особенно учитывая, что это шаблоны Django (или Jinja) - спасибо!
Вот пример кода:
<tr>
<td>1 Topping</td>
{% for p in 1top %}
<td class="price" id="p-{{p.dish.id}}"> {{p.price}} </td>
<td><input id ="{{p.dish.id}}" name ="{{p.dish.name}}" type="number" min="0" max="10" step="1" size="2"></td>
<div hidden id="tc-{{p.dish.id}}">{{p.topping_count}}</div>
<div hidden id="s-{{p.dish.id}}">{{p.size}}</div>
{% endfor %}
</tr>
<tr>
<td>2 Toppings</td>
{% for p in 2top %}
<td class="price" id="p-{{p.dish.id}}"> {{p.price}} </td>
<td><input id ="{{p.dish.id}}" name ="{{p.dish.name}}" type="number" min="0" max="10" step="1" size="2"></td>
<div hidden id="tc-{{p.dish.id}}">{{p.topping_count}}</div>
<div hidden id="s-{{p.dish.id}}">{{p.size}}</div>
{% endfor %}
</tr>
<tr>
<td>3 Toppings</td>
{% for p in 3top %}
<td class="price" id="p-{{p.dish.id}}"> {{p.price}} </td>
<td><input id ="{{p.dish.id}}" name ="{{p.dish.name}}" type="number" min="0" max="10" step="1" size="2"></td>
<div hidden id="tc-{{p.dish.id}}">{{p.topping_count}}</div>
<div hidden id="s-{{p.dish.id}}">{{p.size}}</div>
{% endfor %}
</tr>