Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/24.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 RubyonRails4-如何迭代这些参数?_Ruby On Rails_Ruby_Iteration - Fatal编程技术网

Ruby on rails RubyonRails4-如何迭代这些参数?

Ruby on rails RubyonRails4-如何迭代这些参数?,ruby-on-rails,ruby,iteration,Ruby On Rails,Ruby,Iteration,我正在提交以下参数: {"utf8"=>"✓", "course"=> { "title"=>"Test", "roles"=>["Tuesday", "Thursday"] } } 我的问题是:如何通过“roles”参数迭代到“add_role” 我目前正在尝试此迭代,但它不起作用: @course.user_id = current_user.id params['course']['roles'].each do |key, value

我正在提交以下参数:

{"utf8"=>"✓", 
"course"=>
   {
    "title"=>"Test", "roles"=>["Tuesday", "Thursday"]
   }
}
我的问题是:如何通过“roles”参数迭代到“add_role”

我目前正在尝试此迭代,但它不起作用:

@course.user_id = current_user.id

params['course']['roles'].each do |key, value|
  @course.add_role(key['course']['roles'])
end
我得到以下错误:
nil的未定义方法“[]”:NilClass

我把params编成文字有什么错


谢谢大家!

params['course']['roles']
是数组
[“星期二”、“星期四”]
,而不是散列

在循环中,
key
接受角色字符串的值,
“星期二”['course']
返回
nil
并且
nil['roles']
导致错误

您似乎正在尝试这样做:

params['course']['roles'].each do |role|
  @course.add_role(role)
end

参数['course']['roles']
是数组
[“星期二”、“星期四”]
,而不是散列

在循环中,
key
接受角色字符串的值,
“星期二”['course']
返回
nil
并且
nil['roles']
导致错误

您似乎正在尝试这样做:

params['course']['roles'].each do |role|
  @course.add_role(role)
end

参数['course']['roles']
是数组
[“星期二”、“星期四”]
,而不是散列

在循环中,
key
接受角色字符串的值,
“星期二”['course']
返回
nil
并且
nil['roles']
导致错误

您似乎正在尝试这样做:

params['course']['roles'].each do |role|
  @course.add_role(role)
end

参数['course']['roles']
是数组
[“星期二”、“星期四”]
,而不是散列

在循环中,
key
接受角色字符串的值,
“星期二”['course']
返回
nil
并且
nil['roles']
导致错误

您似乎正在尝试这样做:

params['course']['roles'].each do |role|
  @course.add_role(role)
end


params['course']['roles']
为您提供数组,而不是散列。use.每个do | role |…添加| role(role)end
params['course']['roles']
为您提供数组,而不是散列。use.每个do | role |…添加| role(role)end
params['course'['role'.
为您提供数组,而不是散列。use.每个do | role | role |添加| role(role)end['course']['roles']为您提供数组,而不是散列。使用。每个do | role |…add | role(role)endIt在我的irb中返回
nil
,可能取决于ruby版本?@ArupRakshit我添加了一个屏幕截图。我不是在编造这个!哈哈……这是因为
str[match|str]→ new_str或nil
。表示-如果给定了匹配的_str,则如果该字符串出现在字符串中,则返回该字符串。:)在我的irb中返回
nil
。可能这取决于ruby版本?@ArupRakshit我添加了一个屏幕截图。我没有编造这个!哈哈……这是因为
str[match_str]→ new_str或nil
。表示-如果给定了匹配的_str,则如果该字符串出现在字符串中,则返回该字符串。:)在我的irb中返回
nil
。可能这取决于ruby版本?@ArupRakshit我添加了一个屏幕截图。我没有编造这个!哈哈……这是因为
str[match_str]→ new_str或nil
。表示-如果给定了匹配的_str,则如果该字符串出现在字符串中,则返回该字符串。:)在我的irb中返回
nil
。可能这取决于ruby版本?@ArupRakshit我添加了一个屏幕截图。我没有编造这个!哈哈……这是因为
str[match_str]→ new_str或nil
。表示-如果给定了匹配的_str,则如果该字符串出现在字符串中,则返回该字符串。:)