У меня есть кортеж, который содержит несколько цветов и их коды:
color_list = (
('#CD5C5C', 'Indian Red'),
('#F08080', 'Light Coral'),
('#FA8072', 'Salmon'),
................
)
а это модель:
class ColorList(models.Model):
color = models.CharField(choices=color_list, max_length=10)
class Product(models.Model):
color_list = models.ManyToManyField(ColorList)
вид:
def product_edit(request, pk):
product = get_object_or_404(Product.objects.prefetch_related('color_list'), pk=pk)
context = {'product': product,'color_list': color_list}
return render(request, 'admin/product/product_edit.html', context)
Теперь я хочу отредактировать ранее сохраненные данные в шаблоне, используя форму:
<div class="form-group">
<label><strong>Color List</strong></label>
<select name="color_list" class="form-control selectpicker" multiple data-live-search="true" >
{% for key, value in color_list %}
{% for pro_color in product.color_list.all %}
<option value="{{ key }}" {% if pro_color.color == key %} selected {% endif %}>
{{ value }}
</option>
{% endfor %}
{% endfor %}
</select>
</div>
Я хочу показать ранее выбранный цвет с другими вариантами цвета, но используя этот код шаблона, он генерирует несколько дубликатов <options>
. Так что проблема в том, как я могу использовать несколько для цикла в шаблоне с предварительно выбранным цветом <options>
?