簡體   English   中英

Sierra / El Capitan Mac上的Ruby on Rails MySQL問題

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM