[英]Ruby on Rails MySQL issues on Sierra/El Capitan Mac
將操作系統更新為El Capitan,然后更新為Sierra。 現在,當在舊的Ruby on Rails項目上工作時,所有突然的Rails都無法從相關表中獲取數據。
我已經重新安裝了Homebrew,mysql,rails,ruby和xcode,並且已安裝CLI。
我已經備份了以前可以使用的舊數據庫,並將其導入到全新的mysql安裝中。 Rails正確登錄到項目(之前沒有這樣做),但是之后,獲取索引頁面失敗,並且nil類出現“重新排序”問題。
Started GET "/admin/buildings" for 127.0.0.1 at 2016-11-20 08:36:21 -0500
Processing by Admin::BuildingsController#index as HTML
AdminUser Load (0.3ms) SELECT `admin_users`.* FROM `admin_users` WHERE `admin_users`.`id` = 2 LIMIT 1
Rendered /Users/mh/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/activeadmin-0.6.2/app/views/active_admin/resource/index.html.arb (25.5ms)
Completed 500 Internal Server Error in 38.0ms
ActionView::Template::Error (undefined method `reorder' for nil:NilClass):
1: insert_tag renderer_for(:index)
brew版本Homebrew 1.1.1 Homebrew/homebrew-core (git revision 421e; last commit 2016-11-20)
ruby版本(通過rbenv) ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-darwin15]
rails版本的Rails 3.2.22.5
mysql版本Server version: 5.7.16 Homebrew
希望不是重復的內容(我已經搜索過),但是很抱歉。
編輯:注意到,盡管使用了rbenv global,但rbenv並未為該特定文件夾將ruby和rails設置為最新。 更新到最新版本,以后將更新。
我不確定您的操作系統更新將如何影響這一點,但是其他人在使用ActiveAdmin gem時遇到了undefined method 'reorder'
錯誤。 特別是,將實例變量傳遞到已經存在相同名稱的實例變量的控制器時,似乎會發生這種情況。
例如,您可以在application_controller.rb中定義一個過濾器,該過濾器將提取所有帖子,將它們存儲在名為@posts的變量中,然后將它們傳遞到posts_controller中的索引路由。 ActiveAdmin已經創建並填充了這樣的變量,並且這些變量存在沖突。 在這種情況下,您應該重命名在過濾器中聲明的實例變量。
我注意到,您的問題所獨有的一件事是nil:NilClass。 遇到undefined method 'reorder'
錯誤的其他大多數人都將其用於數組。
我希望這至少有所幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.