使用迁移和更改所有文件(如控制器、模型和关联)的名称来更改表名的最佳方法是什么?

克隆我的回购协议后,如果有人试图运行rails:db:migrate,会有什么问题吗?

推荐答案

使用迁移更改表名的最佳方法是什么

要更改表的名称,可以运行:

$ rails g migration change_[old_table_name]_to_[new_table_name]

在生成的迁移文件中的change方法中,添加以下内容:

def change
  rename_table :[old_table_name], :[new_table_name]
end

在这两种情况下都改变[old_table_name][new_table_name].

(这部分问题已经回答了here个.)

克隆我的repo后,如果有人try 运行rails db:migrate,会有什么问题吗?

不.保留旧的迁移文件并生成新的迁移文件.这就是数据库迁移的好处.

更改所有文件(如控制器、模型和关联)的名称的最佳方法是什么?

一般来说,更改型号名称并不是什么大问题.许多文本编辑器能够在目录中搜索和替换.

我会手动重命名文件名.


Here's a set of more detailed steps to make sure you've hit everything that needs to be changed.

Ruby-on-rails相关问答推荐

是否从已转换为字符串的数组中提取符号?

在 POST 请求中添加了 Rails 奇怪的参数

刺激不添加侦听器以搜索表单输入

ActiveRecord 错误地转义 JSON 字符串

ruby on rails 中的自定义关联

我真正运行的是哪个 Ruby 版本?

Rails 连接并包含连接表中的列

在 rails 3 中设置记录器

如何在 Ruby on Rails 中创建一个锚点并重定向到这个特定的锚点

从 ActiveRecord 模型的集合中构建哈希

如何在 rspec 中运行单个测试?

单击表格行(使用 bootstrap 程序)时,如何使用模式显示数据?

未定义的方法 attr_accessible

Redis 引发需要 NOAUTH 身份验证错误,但没有设置密码

Rails:立即渲染并退出

嵌套模型和父验证

为什么 Ruby on Rails 使用 http://0.0.0.0:3000 而不是 http://localhost:3000?

设计/Rails - 如何删除特定的 Flash 消息? (登录成功)

你如何undo撤消Bundle 安装 --without

如何在不触及 updated_at 属性的情况下更新单个属性?