在控制器
中class FeedEntriesController < ApplicationController
def index
@search = FeedEntry.search(params[:is_star])
@feed_entries = @search.page(params[:page])
@app_keys = AppKey.all
end
end
在视图中 - feed_entries / index.html.erb
<%= link_to "Stared", {:controller => "feed_entries", :action => "index", :is_star => false } %>
feed_entries表包含is_star:boolean
属性。所以,我只想将参数is_star == true传递给params[:is_star]
。
但上面的代码不起作用。请有人帮助我。
如果,请点击Stared
链接。我在浏览器中收到如下错误:
undefined method `stringify_keys!' for "false":String
答案 0 :(得分:1)
看起来您的FeedEntry#搜索方法需要一个响应#stringify_keys的参数!方法,所以我假设你应该传递哈希:
@search = FeedEntry.search(is_star: params[:is_star])
BTW link_to与&#39; controller&#39;和&#39;行动&#39; options是旧的和详细的语法,你应该使用资源丰富的样式:
link_to 'Stared', feed_entries_path
在此处阅读更多内容:http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#method-i-link_to