想要了解從以下兩個選項進行遷移的正確步驟。 更改遷移時,我應該只使用rails g migration add_column_to_tablename
?應該使用添加還是移除遷移,還是對現有遷移文件進行更改?
或者我可以在沒有任何遷移命令的情況下直接更改migartion文件?
想要了解從以下兩個選項進行遷移的正確步驟。 更改遷移時,我應該只使用rails g migration add_column_to_tablename
?應該使用添加還是移除遷移,還是對現有遷移文件進行更改?
或者我可以在沒有任何遷移命令的情況下直接更改migartion文件?
以下是我認爲最好的做法:
如果您還沒有完成遷移,您可以編輯它,然後遷移。
如果您已經遷移,但它最近的遷移,你 可以做rake db:rollback STEP=1
快速回滾它,改變它,然後 再次rake db:migrate
。
如果您的應用程序的歷史記錄遷移足夠遠,那麼最好添加一個新的遷移,以便您擁有所做過的歷史記錄。
如果我上次的遷移沒有部署到生產環境,那麼我會直接回滾並編輯遷移文件。如果已經部署,那麼我添加一個新的遷移文件以進行更正。
本質上在開發模式下,我編輯現有的文件。有些人選擇總是創建一個新文件,但是這會產生大量的小遷移,而這些遷移很難在以後進行。對我來說這是最好的解決方案