您现在的位置是:首页 > 正文

ruby on rails 撤销取消操作

2024-04-01 02:06:01阅读 2
撤销操作

一个常见的情况是更改控制器的名字,这时你得删除生成的文件。生成控制器时,除了控制
器文件本身之外,Rails 还会生成很多其他文件(参见代码清单 3.6)。撤销生成的文件不仅仅要删除控

制器文件,还要删除不少辅助文件。rails generate 命令还会自动修改routes.rb 文件,因此我们也想自动撤销这些修改。)


在 Rails 中,可以使用rails destroy 命令完成撤

销操作。一般来说,下面这两个命令是相互抵消的:
$ rails generate controller StaticPages home help

$ rails destroy controller StaticPages home help


$ rails generate model User name:string email:string

$ rails destroy model User


$ rails db:migrate

$ rails db:rollback

如果要回到最开始的状态,可以使用:
$ rails db:migrate VERSION=0把数字 0 换成其他数字就会回到相应的版本,这些版本数字是按照迁移执行的顺序排列
的。

网站文章

  • 解决Powershell无法执行路径中包含空格的脚本文件

    解决Powershell无法执行路径中包含空格的脚本文件

    当然,如果当前已经处于powershell环境中,可以直接使用。这时可以借助powershell中的调用运算符。下面的示例展示了使用调用运算符和不使用的区别。

    2024-04-01 02:05:53
  • Leakcanary检测泄漏流程原理分析

    Leakcanary检测泄漏流程原理分析

    内存泄漏指的是程序在向系统申请分配内存空间,使用完毕后未释放,结果导致一直占据该内存单元,程序无法再使用该内存单元

    2024-04-01 02:05:14
  • TypeSprict-1.语法小入门

    类型注解 类似于 function setString(name:String),如果在传入参数时非字符串类型,编译时会报错。接口typejs有接口并且不需实现,只需要在传入时符合接口的要求结构即可。interface Person{ firstName:string; lastName:string;}function greeter(person:Person){ return "...

    2024-04-01 02:05:07
  • java 之BufferedOutputStream的flush和close方法的区别

    java 之BufferedOutputStream的flush和close方法的区别

    BufferedOutputStream的flush和close方法的区别 * flush()方法 * 1.用来刷新缓冲区,刷新后可以再次写出 * close()方法 * 2.用来关闭流释放资源 * 3.如果是带缓冲区的流对象的close()方法,不但会关闭流,还会在关闭流之前刷新缓冲区,关闭之后不能再写入 package com.feng; import ...

    2024-04-01 02:04:59
  • 线程同步 CCriticalSection(临界区类)

    线程同步 CCriticalSection(临界区类) 当多个线程访问一个独占性共享资源时,可以使用“临界区”对象。任一时刻只有一个线程可以拥有临界区对象,拥有临界区的线程可以访问被保护起来的资源或代...

    2024-04-01 02:04:19
  • 二维数组详解

    二维数组详解在Java中二维数组被看作为数组的数组,即二维数组为一个特殊的一维数组,其每个元素又是一个一维数组。Java并不直接支持二维数组,但是允许定义数组元素是一维数组的一维数组,以达到同样的效果...

    2024-04-01 02:04:11
  • Debug-CDK编译

    问题描述: make: *** No rule to make target ‘…/…/…/…/…/…/…/xxx.c’, needed by ‘Obj/xxx.o’. Stop. 解决方法: 删掉obj文件夹,重新编译

    2024-04-01 02:04:04
  • C++ 派生类覆盖重载基类函数

    派生类希望基类重载函数可见,情况有三种:     a)派生类中覆盖某个版本,则某个版本可见,全部都覆盖重写,则全部版本可见。     b)派生类中一个也不覆盖,则全部基类版本可见。     c)派生类需要添加新的重载版本,同时又需要可见基类的重载版本,此时并不是必须全部覆盖重写全部版本。可在派生类中用using声明基类重载的函数。       说明:对派生类没有重新定义的重载版本的访问实际...

    2024-04-01 02:03:27
  • npm基础

    简要介绍前端发展情况,介绍npm

    2024-04-01 02:03:19
  • 线性基入门

    今天学习了神奇的线性基,主要是在解决异或问题时比较有用。 假如我们的数字的二进制在x位上都是1(这里指所有的数字总共),那么我们线性基的集合就是x个数字,对应的他们最高位的1分别出现在这x个位置,我们...

    2024-04-01 02:03:12