rake db:使用现有数据库迁移

ed_is_my_name

我正在尝试为现有数据库创建模型。我对该数据库具有只读访问权限。我已经生成了模型,但是当我运行rake db:migrate时,它想“创建”那些表。有没有一种方法可以满足rails的迁移需求,而无需实际创建这些表(因为它们已经存在)?

法兰盘001

如果您的模型和表格已经符合Rails的命名方案User-model => userstable等,并且您的模型继承自ActiveRecord::Base,则您根本不需要运行迁移(而且无论如何也不能运行,因为根据定义,迁移会更改数据库并且您具有只读访问权限)。

如果表名与模型名称不匹配,则可以更改模型名称,也可以在模型中进行设置self.table_name=例如,如果您有一个User模型但表名为accounts,则可以执行以下操作:

class User < ActiveRecord::Base
  self.table = 'accounts'

  # other stuff here
end

在此处阅读更多信息:http : //api.rubyonrails.org/classes/ActiveRecord/ModelSchema/ClassMethods.html#method-i-table_name-3D

另外,您应该删除您的迁移文件。如果要查看模式db/schema.rb,可以通过运行进行模式转储rake db:schema:dump假设您在中的设置正确,那应该会生成文件config/database.yml

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从现有数据库构建db:rake任务

来自分类Dev

重新运行Heroku上的所有数据库迁移(rake db:migrate:reset)

来自分类Dev

rake db:schema:dump不会为所有数据库生成模式

来自分类Dev

即使成功rake db:create之后,Heroku上也没有数据库连接

来自分类Dev

使用rake db:migrate迁移数据不会更改它

来自分类Dev

rake db:reset 在删除数据库中途失败

来自分类Dev

Rake db:migrate和db:create无法使用正确的数据库文件进行操作

来自分类Dev

数据库之间的Rake任务副本

来自分类Dev

rake db:create的问题

来自分类Dev

rake db:create的问题

来自分类Dev

使用rake任务重置数据库

来自分类Dev

Laravel 5.1:迁移现有数据库

来自分类Dev

如何从现有数据库创建迁移?

来自分类Dev

rake db:reset忽略对迁移的更改

来自分类Dev

heroku运行rake db:migrate还原迁移

来自分类Dev

rake db:migrate发生迁移错误

来自分类Dev

Bundle Exec Rake DB迁移错误

来自分类Dev

rake db:reset忽略对迁移的更改

来自分类Dev

运行rake任务时无法在生产中迁移数据库

来自分类Dev

Rake db:migrate刚刚还原(回滚)所有迁移

来自分类Dev

无法使用rake db:rollback进行回滚迁移

来自分类Dev

Rake db错误:在Mavericks上使用rails 4.1迁移

来自分类Dev

rake db:create vs rake db:create:all

来自分类Dev

Rake db:seed拒绝将数据插入特定的数据库列

来自分类Dev

使用现有数据库的实体框架代码优先迁移策略

来自分类Dev

如何避免先使用Entity Framework代码和现有数据库进行迁移?

来自分类Dev

如何理解“ rake db:seed”

来自分类Dev

奇怪的rake db:migrate输出

来自分类Dev

Rake db:migrate捕获错误

Related 相关文章

热门标签

归档