0

如果我查看 Rails 服务器日志,@profile有值,就像dropdown_cases"=>["basic"],但是我下面的代码中的 IF 条件@profile == 'basic'在 Rails 控制器中不匹配,因为输出doing basic不显示,我不知道为什么。

下面是我的代码。

意见:

<%= form_tag :action => 'submit' do %>

语料库类型:

<%= select_tag 'dropdown_cases[]', options_for_select([['Basic','basic'], ['Standard','standard'], ['Advanced','advanced']], 'basic') %></p>

控制器:

def submit
    @profile = params["dropdown_cases"]
    puts @profile
    if @profile == 'basic'
       puts "doing basic"
    end
end
4

2 回答 2

1

从. []_select_tag

和:

<%= select_tag 'dropdown_cases', options_for_select([['Basic','basic'],
['Standard','standard'], ['Advanced','advanced']], 'basic') %>

它应该可以完美运行。

于 2013-05-06T06:38:16.833 回答
0

您是否需要在视图中下拉...如果是这样,请查看我的方法...在我的情况下,我将在我的模型中采用布尔类型状态并将定义一个常量 STATUS

模型

STATUS = [['active', true], ['Inactive', false]]

控制器

resources :user

意见

<div><%= f.label :status%>
  <%= f.select :status, options_for_select(User::STATUS) %></div>
于 2013-05-06T06:56:17.050 回答