簡體   English   中英

Rails:對基礎表進行更改后,如何重新生成腳手架創建的所有視圖?

[英]Rails: How can I regenerate all the views created by scaffold after I make changes to the underlying table?

Rails 新手,所以如果我弄錯了術語,請隨時編輯我的問題!

我已經通過腳手架創建了 MVC,但后來對基礎表進行了更改(重命名了一些列,添加了一些列)。 有沒有辦法重新生成使用原始腳手架創建的視圖,以便它們反映我所做的更改?

如果我運行rails g scaffold Foo --migration=false --skip我會收到一個錯誤,即我的模型名稱已在我的應用程序中使用。

如果刪除整個相應的視圖文件夾(由原始腳手架創建的文件夾),並且我運行rails g scaffold Foo --migration=false --force生成的視圖仍然沒有拾取我模型中的所有字段。

您可以反轉腳手架的生成並使用重命名的新列重新生成新的腳手架。

如果您已經遷移了數據庫,則需要將其回滾。

rake db:rollback

然后你可以反轉腳手架的生成。

rails destroy scaffold MyFoo

然后使用更新的列生成新的腳手架

rails generate scaffold MyFoo column_name_1:data_type column_name_2:data_type column_name_3:data_type

否則,您可以手動重寫視圖和控制器以包含更新的列和新列。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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