如何使用rails形式的文本从集合中选择对象

问题描述 投票:0回答:1

我想要一个文本输入来选择我的rails表单中的给定选项。

f.collection_select(:user_id, User.all, :id, :name)

是最接近我想要的,但有太多的用户显示为下拉列表。

我已经尝试过rails-jquery-autocomplete,并且我已经编写了一个ajax来将搜索结果插入到视图之前,但是在2019年它只是为了将选择框转换为文本输入而显得过于冗长和冗长。如果有一个以rails形式过滤给定对象集合的最佳实践,我想知道。谢谢。

ruby-on-rails forms select input autocomplete
1个回答
0
投票

我猜选择的js库可能是一个很好的选择,并且还有一个rails wrapper gem(https://github.com/tsechingho/chosen-rails

在gemfile中包含gem并运行bundle install

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://harvesthq.github.io/chosen/)中参考各种选项库,并根据您的用例进行自定义。

© www.soinside.com 2019 - 2024. All rights reserved.