如何在 Rails 中为 simple_form 中的关联实现自动完成 6
How to Implement Autocomplete for Association in simple_form in Rails 6
我目前在Rails建一个图书处理项目 6.有两个模型Book
和Categories
,Category可以包含很多本书但是一本书只能属于一个类别。我目前正在使用 simple_form
f.association
来建立表单关联,从而创建一个类别下拉菜单。
new.html.erb
书中
<section class="mt-8">
<%= simple_form_for @book, defaults: { input_html: {class: 'form-input mt-1'}, wrapper_html: {class: 'flex flex-col my-2'}} do |f| %>
<%= f.input :title %>
<%= f.input :description, input_html: {class: 'form-textarea'} %>
<%= f.input :amazon_url %>
<%= f.association :category, collection: Category.all.order(name: :asc),input_html: {class: 'form-select'} %>
<%= f.button :submit, 'Create New Book', class: 'mt-4 p-2 rounded-md bg-gray-400' %>
<% end %>
</section>
我希望类别列表成为自动完成输入。我如何在 Rails 中实现它 6. 我尝试了各种库,但它们都已过时。
Chosen 支持 Rails 6.
经过大量挖掘,我找到了 Choices 库。它完全基于 javascript,并且由于 Rails 6 的 webpack 资产编译,可以无缝运行。
我已经写了一篇博客post。 https://aswinmohan.me/posts/implementing-autocomplete-in-rails-6/
我目前在Rails建一个图书处理项目 6.有两个模型Book
和Categories
,Category可以包含很多本书但是一本书只能属于一个类别。我目前正在使用 simple_form
f.association
来建立表单关联,从而创建一个类别下拉菜单。
new.html.erb
书中
<section class="mt-8">
<%= simple_form_for @book, defaults: { input_html: {class: 'form-input mt-1'}, wrapper_html: {class: 'flex flex-col my-2'}} do |f| %>
<%= f.input :title %>
<%= f.input :description, input_html: {class: 'form-textarea'} %>
<%= f.input :amazon_url %>
<%= f.association :category, collection: Category.all.order(name: :asc),input_html: {class: 'form-select'} %>
<%= f.button :submit, 'Create New Book', class: 'mt-4 p-2 rounded-md bg-gray-400' %>
<% end %>
</section>
我希望类别列表成为自动完成输入。我如何在 Rails 中实现它 6. 我尝试了各种库,但它们都已过时。
Chosen 支持 Rails 6.
经过大量挖掘,我找到了 Choices 库。它完全基于 javascript,并且由于 Rails 6 的 webpack 资产编译,可以无缝运行。
我已经写了一篇博客post。 https://aswinmohan.me/posts/implementing-autocomplete-in-rails-6/