Ruby on rails Rails无符号到整数的隐式转换(Rails)

Ruby on rails Rails无符号到整数的隐式转换(Rails),ruby-on-rails,ruby,arrays,mongodb,ruby-on-rails-4,Ruby On Rails,Ruby,Arrays,Mongodb,Ruby On Rails 4,我试图在bookmark变量中保存数据,但它引发了标题中描述的错误。请告诉我我做错了什么,我无法理解错误 bookmarks = Bookmark.where(request_id: bookmarked_against_Request[:_id]) if bookmarks bookmarks[:corsponding_requests] << request_bookmarked[:id] else bookmarks_new

我试图在bookmark变量中保存数据,但它引发了标题中描述的错误。请告诉我我做错了什么,我无法理解错误

  bookmarks = Bookmark.where(request_id: bookmarked_against_Request[:_id])
    if bookmarks
          bookmarks[:corsponding_requests] << request_bookmarked[:id]
    else
      bookmarks_new = Hash.new
      bookmarks["owner_req"] = session[:user]
      bookmarks["request_id"] = data
      bookmarks["corsponding_requests"] = Array.new
      bookmarks["corsponding_requests"] <<  request_bookmarked[:_id]
      Bookmark.createBookmark(bookmarks)
    end
bookmarks=Bookmark.where(请求\u id:bookmarked\u反对\u请求[:\u id])
如果书签
书签[:响应请求]尝试以下操作:

bookmarks = Bookmark.where(request_id: bookmarked_against_Request[:_id])

if bookmarks
  bookmarks.each { |bookmark| bookmark.update_attributes(corsponding_requests: request_bookmarked[:id] }      
else
  bookmark = Hash.new
  bookmark["owner_req"] = session[:user]
  bookmark["request_id"] = data
  bookmark["corsponding_requests"] = Array.new
  bookmark["corsponding_requests"] <<  request_bookmarked[:_id]
  Bookmark.createBookmark(bookmark)
end
bookmarks=Bookmark.where(请求\u id:bookmarked\u反对\u请求[:\u id])
如果书签
bookmarks.each{| bookmark | bookmark.update_属性(响应_请求:请求_bookmarked[:id]}
其他的
bookmark=Hash.new
书签[“所有者请求”]=会话[:用户]
书签[“请求id”]=数据
书签[“响应请求”]=Array.new

bookmark[“corresponding_requests”]您可以想象
bookmarks
类似于数组,当您尝试
bookmarks[:corresponding_requests]
ruby“think”时,您希望通过整数索引访问数组元素(例如
bookmarks[1]
)但它无法将符号转换为整数并抛出错误。也许,它可以帮助您…

您可以尝试我的解决方案,希望它能有所帮助。请不要对文本图像提出疑问。相反,请将文本本身放在问题中。作为文本阅读和使用它会更好。在@WayneConrad
中没有文本图像![rails error](http://i59.tinypic.com/290r8ft.png)
哦,我真的很抱歉,当我打开此页面时,图像没有加载。我真的很抱歉,即使我由于where条件获得一个元素?书签仍然会被视为数组吗?是的,
where
返回数组。您可以使用
书签。where(请求\u id:bookmarked\u反对请求[:\u id]).首先
为了得到一个元素,它又开始给我错误,现在我才发现真正的错误。很高兴你发现了错误。问题是什么,你试图解决什么?在模型中,数据类型不正确,而不是数组,我写了Aray,现在我完全知道什么是错误的,你的解决方案有帮助给我打电话,谢谢