带参数滑轨的情况

时间:2019-01-26 16:16:27

标签: ruby-on-rails ruby action

怎么了?

我有一个带有单选按钮的表格。

表单将选中的ID []发送到 proc sql; create table inc_status as select incident_name, appstatus, max(case when APPStatus="In progress" then "In progress" when APPStatus="overdue" then "overdue" else " " end) as inc from incident group by incident_name; quit; 操作。

我在控制台中看到了params的值,但是属性没有更新。

总是分配9

create

2 个答案:

答案 0 :(得分:0)

说实话,我认为很多事情都是错误的……这并不是在Rails中创建复选框的方式。您检查过表单助手了吗?还是考虑过使用简单表单gem?

创建表单的方式:

#assuming you have a related model called category
simple_form_for @advert do |f|
  = f.association :category, as: :checkboxes

然后在控制器中只需将参数列入白名单并保存模型:

def update
  @advert.update(advert_params)
end

def advert_params
  params.require(:advert).permit(category_ids: [])
end

答案 1 :(得分:-1)

如果我对您的理解正确,那么您在设置@advert中的类别值时会遇到问题。 根据ruby语法,您必须在块内移动代码,这意味着您应该这样编写条件:

   if (params[:ids] == "1")
      @advert.update(category: "1")
   elsif (params[:ids] == "2")
      @advert.update(category: "2")
   elsif (params[:ids] == 3)
      @advert.update(category: "3")
   else
      @advert.update(category: "9")
   end

看看here
此外,在这种情况下,我建议您使用开关盒