Автовыбор нескольких значений select при получении данных из базы данных
У меня есть bootstrap-select с атрибутом multiple data-max-options="2", давайте воспользуемся примером из официальной документации
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<!-- CSS only -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3" crossorigin="anonymous">
<!-- JavaScript Bundle with Popper -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ka7Sk0Gln4gmtz2MlQnikT1wXgYsOg+OMhuP+IlRH9sENBO0LRn5q+8nbTov4+1p" crossorigin="anonymous"></script>
<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-select@1.13.14/dist/css/bootstrap-select.min.css">
<!-- Latest compiled and minified JavaScript -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.14.0-beta2/js/bootstrap-select.min.js"></script>
<select class="selectpicker" multiple data-max-options="2">
<option>Mustard</option>
<option>Ketchup</option>
<option>Relish</option>
</select>
Вообще говоря, то, что я бы сделал с одиночным селектом, это:
<select class="selectpicker" multiple data-max-options="2">
{% if meal.sauce == "Mustard" %}
<option value="Mustard" selected>Mustard</option>
<option value="Ketchup">Ketchup</option>
<option value="Relish">Relish</option>
{% elif meal.sauce == "Ketchup"%}
<option value="Mustard">Mustard</option>
<option value="Ketchup" selected>Ketchup</option>
<option value="Relish">Relish</option>
{% else %}
<option value="Mustard">Mustard</option>
<option value="Ketchup">Ketchup</option>
<option value="Relish" selected>Relish</option>
{% endif %}
</select>
Таким образом, в зависимости от того, что у нас есть в базе данных, когда мы захотим отредактировать select, он будет автовыбран с результатом из базы данных.
Проблема возникает, когда мы выбираем более одного соуса и затем хотим редактировать на другой странице.
С простым соусом редактирование простое: meal.sauce == "Mustard" или как угодно.
При множественном выборе я не знаю, как реализовать логику: meal.sauce == "Ketchup, Mustard" ?