繁体   English   中英

删除迁移文件后Rails DB Rake任务未运行

[英]Rails DB Rake Tasks Not Running After Deleting Migration File

我删除了一个我不再需要的迁移文件(删除,不回滚)。 然后尝试运行迁移,我的rake任务完全停止了。 最后修复我的问题(或者我认为)是添加另一个迁移,最终用于运行rake db:migrate以进行最新的迁移。 然后在设置了最新的模式后,我的rake任务再次完全停止工作。

我正在使用rails 5.我尝试使用新的rails命令来执行db任务,但是没有用。

我知道我不是在这里展示代码,但是这个问题很困难。 我列出了当我为我的应用程序运行任务时会发生什么的截图。 你会看到各种红宝石警告,因为我应该升级我的版本,但那些不相关。

在此输入图像描述

有没有人遇到过这个问题或有任何想法如何解决?

我以前有这个,我们没有足够的信息来给出一个完美的答案,所以我给了你一些对我有用的建议。

在你尝试任何激烈的事情之前,运行rails db:reset

希望这有效,如果不希望你使用git或svn。 回到它工作的时候,然后不要删除迁移文件。 创建一个新的迁移,删除您不再需要的表。

为此,运行'rails g migration drop_TABLE_NAME'将生成一个新的迁移文件,您可以删除如下所示的表。

def change
 drop_table :TABLENAME
end

如果您不使用git,我会尝试编辑db/schema.rb

我将db.yml中的数据库设置为默认值。 我必须声明实际的数据库名称,然后运行迁移才能使其工作。

对我来说,我的db.yml现在看起来像这样:

default: &default
  adapter: postgresql
  template: template0
  database: job-board-development
  pool: 5
  timeout: 5000

虽然之前它看起来像这样:

默认值:&default adapter:postgresql template:template0 pool:5 timeout:5000

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM