2012-10-07 87 views
0

我已經在新安裝的linux中從github獲取了2個我的應用程序(它們一直在其他linux環境中工作)。我也安裝了mysql,nodejs。我在rails中創建了一個測試應用程序,並測試了它的工作。但是我克隆的應用程序在運行rake db時發生錯誤:migrate。Rails,耙分貝:遷移github克隆應用程序錯誤

在APP1錯誤:

耙分貝:遷移 == CreateItems:遷移========================= =========================== - create_table(:items) - > 0.0025s == CreateItems:migrated(0.0027s) ===========================================

== AddDataToTableItems :遷移============================================ rake中止!發生 一個錯誤,這和所有後來遷移取消:

未定義的方法'製造商」的#

誤差在APP 2

耙分貝:遷移 耙中止! 未定義的方法`[] =」的零:NilClass

雖然兩個錯誤是不同的,他們應該被有關(如應用在工作(通過運行帶有--trace任務查看完整的跟蹤)其他環境)。我因半天的問題而陷入困境。有關相同的任何輸入?

PS:是的應用程序遷移文件內容如下: http://dl.dropbox.com/u/18367173/migrate_app2.tar.gz http://dl.dropbox.com/u/18367173/migrate_app1.tar.gz

+0

你可以發佈遷移的地方嗎? – Agis

+0

上傳遷移文件: http://dl.dropbox.com/u/18367173/migrate_app1.tar.gz http://dl.dropbox.com/u/18367173/migrate_app2.tar.gz – Himz

回答

0

我相信你想添加的東西在創建表格列之前在製造商字段中。

確保首先運行所有真正的遷移(修改模式的遷移),並且只有在運行那些在數據庫中發佈數據的遷移之後。順便說一下,您不應該使用遷移來在您的應用中發佈示例數據,您應該爲此數據庫種子使用rake任務。

+0

謝謝。我在最後一次遷移中添加列(製造商)。但對於製造商領域,以前沒有數據。所以它不應該拋出錯誤。 是的,計劃將樣本數據移動到種子。讓我把數據放入種子並檢查。 – Himz

+0

還有第二個應用程序的任何意見。所有的遷移都是獨立的(並且沒有種子數據)? 感謝您的幫助。 – Himz

+0

是的,請將Model.create放入db/seeds/rb中,並使用rake db:seed運行它們還請使用gui工具或命令行檢查項目表並查看它具有的內容。 –