【发布时间】:2012-08-19 22:43:33
【问题描述】:
美好的一天。 我讨厌一个控制器,它使用 ransack 按标题查找文章。 我需要用于查找信息的字段以使用自动完成功能。 目前它发现没问题,但没有自动完成,你能帮我解决这个问题吗 还有宝石https://github.com/crowdint/rails3-jquery-autocomplete-app?
宝石文件
gem "ransack"
gem 'rails3-jquery-autocomplete'
gem 'nifty-generators'
gem 'jquery-rails', '~> 2.0'
在视图中:
<%= search_form_for @q do |f| %>
<%= f.label t('.find') %>
<%= f.autocomplete_field :title_cont,
articles_autocomplete_article_title_path, :size => 15 %><br />
<%= f.submit :value=>'Search', :class=>'fl_right' %>
<% end %>
布局头:
<%= stylesheet_link_tag "application", :media => "all" %>
<%= javascript_include_tag "application" %>
<%= javascript_include_tag '/javascripts/jquery-ui-1.8.23.custom.min.js',
'/javascripts/autocomplete-rails.js', '/javascripts/rails.js' %>
<%= stylesheet_link_tag '/stylesheets/ui-lightness/jquery-ui-1.8.23.custom.css' %>
控制器
class ArticlesController < ApplicationController
autocomplete :article, :title
更新 1 和routes.rb
get 'articles/autocomplete_article_title'
更新 2
在视图中,代替<%= f.autocomplete_field :title_cont,
用过的
1 ) :title_start 没有变化
2) :articles_article_title_start 等导致错误。
更新 3 我已经编辑了 routes.rb。将 get 'articles/autocomplete_article_title' 移到语言环境变量的范围内,现在可以使用了。.. 出现自动完成下拉列表...但为空:( 现在必须修复那个。
更新 4 尝试使用http://railscasts.com/episodes/102-auto-complete-association。但它适用于旧版本的导轨......等等
更新 5 在 routes.rb 中更改
resources :articles do
get 'autocomplete_article_title'
end
还没有运气。
更新 6 据我了解,当前的问题是:洗劫和自动完成使用一个字段。 它适用于对 autocomplete_field 类型的字段进行洗劫。但我不知道如何使用自动完成功能使 ransack 可接受的字段名称。你能帮忙吗?
更新 7 所以在视图中
f.text_field :title_start,
"data-autocomplete" => articles_autocomplete_article_title_path,
:size => 15
在 routes.rb 中
scope '(:locale)' do
resources :users
resources :news
resources :articles do
end
get 'articles/autocomplete_article_title'
get "news/index" , as: 'news'
# match "/news*tail" => 'news#index'
root :to => 'News#index', as: 'news'
end
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 autocomplete jquery-autocomplete ransack