Я хочу, чтобы текстовый ввод выбирал заданные параметры в моей форме рельсов.
f.collection_select(:user_id, User.all, :id, :name)
ближе всего к тому, что я хочу, но слишком много пользователей, чтобы показать их в раскрывающемся списке.
Я пробовал rails-jquery-autocomplete и раньше писал ajax для вставки результатов поиска в представление, но в 2019 году все это кажется слишком многословным и многословным, просто чтобы преобразовать поле выбора в текстовый ввод. Если есть лучшая практика для фильтрации данной коллекции объектов в форме рельсов, я хотел бы знать. Спасибо.
Я предполагаю, что выбранная библиотека js может быть хорошим вариантом для рассмотрения, и для этого также доступен гем-оболочка rails (https://github.com/tsechingho/chosen-rails)
Включите гем в свой гемфайл и запустите установку пакета.
gem 'chosen-rails'
Включите следующее в application.js
//= require chosen-jquery
Включите следующее в application.scss
*= require chosen
Пример использования:
После завершения настройки вы можете использовать его следующим образом.
<%= select_tag :users, options_for_select(User.all),class:"form-
control",multiple:true id:chosen-select" %>
И инициализируйте его в java-скрипте следующим образом
$('#chosen-select').chosen();
Вы можете обратиться к различным библиотекам параметров, представленным на их официальной странице (https://harvethq.github.io/выбранный/), и настроить их в соответствии с вашим вариантом использования.
Спасибо большое. Кажется, что окно поиска не отображается на мобильных устройствах, но форма, которую я делаю, не для мобильных устройств, так что это сработает. Я ценю ваше предложение.