Скажем, что я запрашиваю список фруктов, а затем собираю только идентификатор и имя фрукта в @fruit.
[32, "apple"],
[8, "bannana"],
[10, "cantelope"],
[11, "grape"],
[15, "orange"],
[41, "peach"],
[22, "watermelon"]
@fruit используется в помощнике Select. "яблоко", находящееся в индексе 0 @fruit, будет выбранным значением (первый вариант) выбора. Это составленный пример, но по умолчанию я всегда буду знать, что "оранжевый" по имени (а не по id). Мне нужно "оранжевое", чтобы быть выбранным значением тега select (первый вариант).
": prompt = > 'orange'" просто добавляет второй экземпляр "оранжевого" в выборе. Все, что я нашел в Google, похоже, связано с добавлением лишнего значения или пробела в список.
Поскольку индекс 0 массива всегда становится выбранным значением (если в помощнике выбора не используется приглашение или пробел), есть ли способ найти индекс, содержащий имя "оранжевый" (@fruit [x]. name == 'orange') и переместить его в индекс 0, сохранив существующий альфа-список в остальной части списка? Итак, массив @fruit будет выглядеть так:
@fruit[0] [15, "orange"],
@fruit[1] [32, "apple"],
@fruit[2] [8, "bannana"],
@fruit[3] [10, "cantelope"],
@fruit[4] [11, "grape"],
@fruit[5] [41, "peach"],
@fruit[6] [22, "watermelon"]
Единственное, что я могу сейчас подумать, это перебрать @fruit, и если "оранжевый" будет найден, добавьте его в новый массив. Затем повторите попытку через массив @fruit и добавьте все, что не имеет названия "оранжевый". Я не уверен, как это выписать, но похоже, что это сделает то, что я ищу. Может быть, есть какой-то простой способ сделать это, я пропущу (указать, какой индекс в массиве должен быть первым выбранным вариантом)?
Спасибо!