我運行了rake db:migrate
,我的所有遷移都運行了。然而,當我嘗試運行rake db:test:prepare
我得到的錯誤:Rake數據庫待遷移的Rails數據庫:test:prepare
You have 1 pending migrations:
20130724211328 CreateGalleries
Run `rake db:migrate` to update your database then try again.
然後重新運行rake db:migrate
給出了錯誤:
PG::Error: ERROR: relation "galleries" already exists...
但在控制檯中,我可以如圖所示準確地創建和操縱的畫廊模式在CreateGalleries遷移中。該表格沒有被創建,甚至沒有在任何其他遷移中提及。
看來遷移運行得很好,但沒有註冊。任何想法如何解決這一問題?
編輯
我解決了這個與rake db:drop db:create db:migrate
然後rake db:test:prepare
,但我很高興地給予解決,任何人誰可以在什麼擺在首位引發的問題線索。
什麼是不正確執行的例子?該模型在控制檯中完全按我的意願做出響應。是否還有其他無功能(例如跟蹤)操作可能會失敗,但仍然保持功能不變? – tyler
一個例子是您的表格創建得很好,但是您在應該被索引的列的名稱中使用了小錯字(使用'add_index')。遷移沒有完成,但由於表在那裏,您無法再次運行它來完成它,而無需手動修復它。 –
如果整個過程不運行,它是否不會回滾遷移並撤消更改? – tyler