基于rails的schedule网站开发(8):撤销操作

8 篇文章 0 订阅

即使再小心,在开发 Rails 应用的过程中也可能会犯错。幸好 Rails 提供了一些工具能够帮助我们还原操作。

举例来说,一个常见的情况是,更改控制器的名字,这时你得删除生成的文件。生成控制器时,除了控制器文件本身之外,Rails 还会生成很多其他文件(参见代码清单 3.4)。撤销生成的文件不仅仅要删除控制器文件,还要删除一些辅助的文件。(在 2.2 节和 2.3 节我们看到,rails generate 命令还会自动修改 routes.rb 文件,因此我们也想自动撤销这些修改。)在 Rails 中,我们可以使用 rails destroy 命令完成撤销操作。一般来说,下面这两个命令是相互抵消的:

$ rails generate controller StaticPages home help
$ rails destroy  controller StaticPages home help

第 6 章会使用下面的命令生成模型:

$ rails generate model User name:string email:string

这个操作可以使用下面的命令撤销:

$ rails destroy model User

(在这个例子中,我们可以省略命令行中其余的参数。读到第 6 章时,看看你能否发现为什么可以这么做。)

对模型来说,还涉及到撤销迁移。第 2 章已经简要介绍了迁移,第 6 章开始会深入介绍。迁移通过下面的命令改变数据库的状态:

$ bundle exec rake db:migrate

我们可以使用下面的命令撤销前一个迁移操作:

$ bundle exec rake db:rollback

如果要回到最开始的状态,可以使用:

$ bundle exec rake db:migrate VERSION=0

你可能猜到了,把数字 0 换成其他的数字就会回到相应的版本,这些版本数字是按照迁移执行的顺序排列的。

知道这些技术,我们就可以得心应对开发过程中遇到的各种问题了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值