我的應用程序處於測試階段,並且我一直在對涉及新模型的功能進行有限測試。經過相當數量的測試之後,我必須進行結構更改,使舊數據無法使用。刪除並重新創建單個表格(在Heroku上)
我需要做的就是刪除並重新創建一個表格。我知道我可以在遷移中做到這一點,但這似乎是這樣的黑客攻擊。在本地開發副本中,我只會使用db:reset
,但在測試版應用程序中,我不想在除此之外的任何表中丟失數據。
這是一種指導生產應用程序刪除並重新創建單個表的簡單方法。就我而言,我正在使用Heroku進行部署,以防影響您如何解決此問題。
謝謝,這項工作完美,似乎比刪除/重新創建遷移更直接。出於好奇,這是否也會重置ID自動遞增回1?這不是必需的,但是如果第一個記錄(後擦除)仍然以ID開頭,那麼它會感覺更乾淨:1 – Andrew 2011-03-09 04:23:03
@Andrew我相信truncate是您要查找的sql命令。 Docs at http://www.postgresql.org/docs/9.1/static/sql-truncate.html – Ameen 2013-11-25 05:20:39
在heroku上,您現在使用「heroku run rails console」 – 2014-04-24 22:21:54