有没有办法在Rails中“撤销”脚手架命令的效果?
当前回答
要生成脚手架:
rails generate scaffold abc
恢复脚手架:
rails destroy scaffold abc
如果您已经为它运行了迁移,只需回滚即可
rake db:rollback STEP=1
其他回答
要生成脚手架:
rails generate scaffold xyz
恢复脚手架:
rails destroy scaffold xyz
你可以撤销你所做的一切
rails generate xxx
By
rails destroy xxx
例如,它将生成器应用于迁移、脚手架、模型等
任何时候运行rails g,都可以通过运行rails d (destroy)来删除生成的内容。如果你已经运行rake db:migrate,你需要在销毁之前运行rake db:rollback:)
你也需要在摧毁脚手架后回滚迁移
rails destroy scaffold 'scaffoldname'
rake db:rollback
案例1:如果您只运行这个命令来生成脚手架-
rails generate scaffold MODEL_NAME FIELD_NAME:DATATYPE
Ex - rails generate scaffold User name:string address:text
但到目前为止,您还没有运行任何命令进行迁移
rake db:migrate
那么您应该只需要运行这个命令,比如-
rails destroy scaffold User name:string address:text
情况2:如果您已经通过以下命令运行(脚手架和迁移),例如-
rails generate scaffold User name:string address:text
rake db:migrate
然后你应该首先运行回滚迁移命令,然后像下面那样破坏脚手架
rake db:rollback
rails destroy scaffold User name:string address:text
以这种方式,我们可以撤销脚手架。我们也可以用d表示销毁,用g表示生成。
推荐文章
- 我如何在Ruby中解析YAML文件?
- 指定创建新应用程序时要使用的rails版本
- 确定ActiveRecord对象是否为New
- Rails中的OO设计:在哪里放置东西
- 如何在Heroku上重新启动rails服务器?
- respond_to块如何工作?
- 给定一个类,查看实例是否有方法(Ruby)
- rails局部模板中的可选局部变量:如何退出(defined?foo)混乱?
- 在日历应用程序中建模重复事件的最佳方法是什么?
- Ruby Bundle Symbol not found: _SSLv2_client_method (LoadError)
- 如何创建一个私有类方法?
- rails耙任务是否提供对ActiveRecord模型的访问?
- 无法安装pg gem
- 双* (splat)操作符做什么
- 如何使用Ruby on Rails进行HTTP请求?