Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 为什么“选择辅助对象”不自动显示选定的值?_Ruby On Rails_Ruby On Rails 3 - Fatal编程技术网

Ruby on rails 为什么“选择辅助对象”不自动显示选定的值?

Ruby on rails 为什么“选择辅助对象”不自动显示选定的值?,ruby-on-rails,ruby-on-rails-3,Ruby On Rails,Ruby On Rails 3,此代码适用于: select("questionnaire", "is_active", options_for_select([["no", false], ["yes", true]], @questionnaire.is_active) ) 但这不会: select("questionnaire", "is_active", options_for_select([["no", false], ["yes", true]]) ) 为什么rails不知道自己处理所选的值?逻辑是什么?我猜

此代码适用于:

select("questionnaire", "is_active", options_for_select([["no", false], ["yes", true]], @questionnaire.is_active) )
但这不会:

select("questionnaire", "is_active", options_for_select([["no", false], ["yes", true]]) )

为什么rails不知道自己处理所选的值?逻辑是什么?

我猜您是在不使用form对象的情况下直接调用帮助程序:

<%= select(:questionnaire, :is_active, ......) %>

您应该在该对象的窗体上调用它:

<%= form_for @questionnaire do |form| %>
  <%= form.select(:is_active, [["no", false], ["yes", true]]) %>

在这种情况下,select助手将使用propper selected值调用它