从这篇文章中提取params的最佳方法是什么?

时间:2011-10-18 17:04:25

标签: ruby-on-rails hash attributes params

可能有更好的方法来实现这一目标。

我在一个表单中点击了7个不同按钮的按钮(每个按钮,每周一天)。

= radio_button_tag 'days_gift_available', '{:monday => true}', true, {:class => "live-form"}

然后当表格被发送时,我在我的参数中得到了这个......

"{:monday => true}"

这就是我困惑的地方..我想把这些数据应用到这样:

                  This is supposed to be a dynamic var for the day.
                                         |
                                         |
                                         V
  if @organization.days_gift_available[:day] == false || @organization.days_gift_available[:day] == nil
    @organization.days_gift_available = {:day => true}
  else
    @organization.days_gift_available = {:day => false}
  end

注意我使用[:day]属性变量的可怕失败尝试。不确定如何应用..

我的问题是,如何提取此哈希数据并将其应用于update_attribute调用。

1 个答案:

答案 0 :(得分:2)

单选按钮的工作方式:

某个组的所有单选按钮具有相同的名称但不同的值。只有提交的单选按钮的值才会被提交。

- # monday
= radio_button_tag 'days_gift_available', '1', true, {:class => "live-form"}
- # tuesday 
= radio_button_tag 'days_gift_available', '2', false, {:class => "live-form"}
- # thursday
= radio_button_tag 'days_gift_available', '3', false, {:class => "live-form"}
- # ...until sunday

在您的控制器中:

@organization.days_gift_available = params[:days_gift_available]

params[:days_gift_available]是选定的日期,应该在1到7之间