【问题标题】:How to capture the rails migration errors?如何捕获 Rails 迁移错误?
【发布时间】:2016-11-25 22:43:57
【问题描述】:

运行 rake db:migrate 时,会出现表不存在等错误。如何捕获这些错误?

【问题讨论】:

  • 您不应该编写会引发错误的迁移。 “表不存在”例如可以在突变中直接使用if table_existsguard 轻松检查。一般规则是:迁移不会抛出异常。顺便说一句,这不是所谓的关于 SO 的问题,请阅读the rules
  • 由于指定的原因(“太宽泛”),我认为这个问题不能关闭。我会投票决定保持开放。但是,正如所问的,这不是一个好问题——一些代码、错误输出的示例等,肯定会改进它。

标签: ruby ruby-on-rails-4 database-migration


【解决方案1】:

看起来您的表包含在主表之前运行的外键。 您可以通过日志轻松确定并更改迁移顺序以首先运行您的依赖表。所以,你可以轻松摆脱它。

例如。假设您有两个表'user''role'。用户有很多角色。 那么'role'表必须包含用户的id作为外键。

在这种情况下,用户表必须在角色表之前创建。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-07-28
    • 2015-04-04
    • 2012-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-28
    相关资源
    最近更新 更多