2015-10-26 53 views
-2

我從Rails 3的更新到Rails的4.2,當我運行測試套件我收到以下錯誤未定義的方法`地圖!'爲#<::鋪ActiveRecord_Relation:0x007ff1d69b4f40>

Failure/Error: get 'edit', id: @shops[3].id 
NoMethodError: 
    undefined method `map!' for #<Shop::ActiveRecord_Relation:0x007ff1d69b4f40> 

和控制器的代碼是:

existing_shops.map! { |obj| [["##{obj[:shop_id]} #{obj[:name]}, 
#{obj[:phone]}, #{obj[:address]}, #{obj[:city]}, #{obj[:state]}, #{obj[:zipcode]} "]]} 

我用Rails 4.2.4和RSpec 3.3.0

感謝您

回答

6

關係不再具有像#map這樣的增變方法!和#delete_if。在使用這些方法之前,通過調用#to_a轉換爲數組。

existing_shops.to_a.map! { ... } 

- A Guide for Upgrading Ruby on Rails

相關問題