有没有办法在Rails中“撤销”脚手架命令的效果?


当前回答

Rails [option] scaffold脚手架名称

选项

g    generate
d    destroy

如果有的话

rails g  scaffold myFoo

然后反向使用

rails d scaffold MyFoo

其他回答

提供了另一种基于git的解决方案

开始一个新项目

rails new project_name
cd project_name

初始化git

git init
git commit -m "initial commit"

创建一个脚手架

rails g scaffold MyScaffold
rake db:migrate

回滚脚手架

rake db:rollback
git reset --hard
git clean -f -d

使用这个

rails d scaffold MODEL_NAME

rake db:rollback

首先,如果您已经运行了由scaffold命令生成的迁移,那么您必须首先执行回滚。

rake db:rollback

你可以使用以下方法创建脚手架:

rails generate scaffold MyFoo 

(或类似),并且您可以使用

rails destroy scaffold MyFoo

这将删除generate创建的所有文件,但不会删除手动进行的任何其他更改。

如果您只想查看生成器将创建的文件,您可以传递generator -pretend或-p选项。

用于在轨道中生成脚手架

rails generate scaffold MODEL_GOES_HERE

用于在轨道上撤消脚手架-

rails destroy scaffold MODEL_GOES_HERE