【问题标题】:Rails model update doen't work after cap migrate上限迁移后 Rails 模型更新不起作用
【发布时间】:2013-09-04 12:46:25
【问题描述】:

我有一个 Rails 3.2 应用程序,但我在生产方面遇到了一些问题:

我有一个模型“项目”并进行了迁移以添加“描述”字符串。 跑步 rake db:migrate 一直在我的开发人员机器上工作正常。 但是当我在生产服务器上执行cap deploycap migrate 时,我无法更新我的 已经在数据库中的项目模型。只有新的工作正常。 我正在使用 postgres 9.1

我不知道这里有什么问题,因为它在我的本地机器上工作正常。

问候

奥利弗

【问题讨论】:

  • 你重启过rails服务器吗?可能会解决这个问题
  • 您是否还为description 添加了存在验证?在生产服务器上启动控制台,尝试更新现有项目,如果失败,请查看 project.errors
  • @techvineet 是的,我做到了......当我创建一个新的项目模型时它工作正常。
  • 在您尝试在控制台中更新后,project.errors 会给您带来什么?
  • 是的,我进行了存在验证。启动控制台给我这个错误:数据库配置没有指定适配器。我需要在生产中定义开发模式吗?

标签: ruby-on-rails ruby-on-rails-3 postgresql capistrano rails-migrations


【解决方案1】:

我想你要找的是cap deploy:migrate

Run the migrate rake task. By default, it runs this in most recently deployed
version of the app...

您可以在此处阅读更多信息:https://github.com/capistrano/capistrano/wiki/Capistrano-Tasks

还要确保在使用 capistrano 时使用正确的环境

【讨论】:

    【解决方案2】:

    谢谢,我确实运行了cap deploy:migrate 任务。但是这里的问题是我正在验证一个新创建的字段的存在,这导致数据库中已经存在的记录出现问题。

    谢谢。

    【讨论】:

      猜你喜欢
      • 2017-10-01
      • 1970-01-01
      • 2017-07-24
      • 1970-01-01
      • 2016-05-14
      • 1970-01-01
      • 2012-09-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多