我希望在使用 Ruby on Rails 的 globalize3 gem 时实现一个简单的搜索功能。由于模型的翻译存储在单独的表中,因此下面的代码不起作用,因为 products 表中不再有 :name 字段。如何调整下面的代码以使搜索功能正确?
products_controller.rb
@products = Product.search(params[:search]).all
index.html.erb
<%= form_tag products_path, method: :get do %>
<%= text_field_tag :search, params[:search] %>
<%= submit_tag "Search", name: nil %>
<% end %>
模型
class Product < ActiveRecord::Base
translates :name
attr_accessible :name, :price, :released_at
def self.search(search)
if search
where('name LIKE ?', "%#{search}%")
else
scoped
end
end
end