【问题标题】:how to select a object from a collection using text in rails form如何使用rails表单中的文本从集合中选择对象
【发布时间】:2019-08-31 11:48:57
【问题描述】:

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

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

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

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

【问题讨论】:

    标签: ruby-on-rails forms select input autocomplete


    【解决方案1】:

    我想选择的 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/) 中提供的各种选项库,并根据您的用例进行自定义。

    【讨论】:

    • 非常感谢。搜索框似乎没有出现在移动设备上,但我正在制作的表格不适用于移动设备,所以这可以完成工作。感谢您的建议。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-09-21
    • 2022-09-30
    • 1970-01-01
    • 1970-01-01
    • 2016-09-16
    • 2015-05-03
    • 2022-06-11
    相关资源
    最近更新 更多