我正在创建一个rails简单表单,它有两个字段:集合和复选框。集合中的值是根据是否选中该复选框确定的。
<%= f.input :id, :collection => (@s if show_all_shoppers || @rs), :label_method => :name, :value_method => :id, :label => "Shopper", :include_blank => true %>
<%= f.input :show_all_shoppers, :as => :boolean, :label => false, :input_html => { :'data-label' => 'Display all shoppers'} %>
但是,当我尝试这个时,我会继续undefined local variable or method show_all_shoppers
。请注意:id
是我的模型实例中的字段名,但show_all_shoppers
不是
我该如何纠正?
答案 0 :(得分:0)
我确实不知道你要做什么但是当选中复选框时应该有一些javascript正在执行。在您的模型中,创建一个attr_accessor
,如下所示:
attr_accessor :show_all_shoppers
然后在您的表单中,您可以这样做:
<%= f.input :show_all_shoppers, :as => :boolean, :label => false, :input_html => { :'data-label' => 'Display all shoppers'} %>
还有另一个解决方案,但我从未尝试过,所以不知道是否会起作用:
<%= f.input :show_all_shoppers do %>
<%= check_box_tag 'show_all_shoppers', 'Display all shoppers', false %>
<% end %>
来源:Rails Simpleform with non-model inputs
可能你可以尝试一下。
希望这有帮助。
答案 1 :(得分:0)
SELECT
start_date,
end_date,
id
FROM
employee_leave
WHERE
(DATE(start_date) >= :start_date_range AND DATE(start_date) <= :end_date_range)
OR
(DATE(end_date) >= :start_date_range AND DATE(end_date) <= :end_date_range);
与javascript / jquery
的编辑一起使用