如何通过hidden_​​field传递'nil'作为参数值?

时间:2013-04-01 17:42:18

标签: ruby-on-rails-3

在我的应用程序控制器

class FeedEntriesController < ApplicationController
  def index
    @search = FeedEntry.search(params[:search])
    @feed_entries = @search.page(params[:page])
    @app_keys = AppKey.all
  end
end

在我的Views / feed_entries / index.html.erb

<li>
    <%= form_for @search do |f|%>
    <%= f.hidden_field :last_clicked_on, value: 'nil' %>
    <%= f.submit "History" %>
    <% end %>
</li>

我使用gem 'meta_search'搜索数据库。

feed_entries表包含last_clicked_on:datetime属性,默认为nil。我只想传递'nil'作为last_clicked_on属性的值。因此,控制器将单独搜索last_clicked_on = nil

请有人帮我解决此问题。

1 个答案:

答案 0 :(得分:1)

如果您一直想搜索last_clicked_on为零,则应该为模型添加scope

如果您不想这样做,可以跳过隐藏字段,只需添加到params哈希:

params[:search][:last_clicked_on] = nil

在执行搜索之前