gpt4 book ai didi

ruby-on-rails - Rails acts_as_taggable heroku 500 错误

转载 作者:行者123 更新时间:2023-12-02 01:49:29 25 4
gpt4 key购买 nike

我为我的应用程序创建了一个新的 Projects 模型,在开发中一切正常,但在 Heroku 的生产中我收到了 500 错误。错误来 self 的 ProjectsController#create the error states:

2014-05-16T07:00:48.018827+00:00 app[web.1]:
2014-05-16T07:00:48.018832+00:00 app[web.1]: ActiveRecord::StatementInvalid (PG:
:UndefinedColumn: ERROR: column "taggings_count" does not exist
2014-05-16T07:00:48.018834+00:00 app[web.1]: LINE 1: UPDATE "tags" SET "taggings
_count" = COALESCE("taggings_coun...
2014-05-16T07:00:48.018835+00:00 app[web.1]:

这与我在搜索后发现的本期中的错误几乎完全相同:https://github.com/KatanaCode/blogit/issues/57 .这个人说他们通过从 acts_as_taggable 中提取这些新迁移来解决它 https://github.com/mbleigh/acts-as-taggable-on/tree/master/db/migrate

我很确定我遇到了同样的问题,但我是 Rails 的新手,不确定他取消这些迁移是什么意思。我是否只更新我的 acts_as_taggable gem 并推送到 heroku?有人能指出我正确的方向吗?提前致谢。

最佳答案

由于您是新手(欢迎顺便说一句!!!),这是您的错误:

ActiveRecord::StatementInvalid (PG::UndefinedColumn: ERROR:  column "taggings_count" does not exist

这是一个标准错误,基本上意味着您的数据库中没有该列

您的 acts_as_taggable 正在您的 production 数据库中寻找 taggings_count 列,但它不在那里。一个简单的解决方法是使用 rake db:migrate生产环境 (Heroku) 中的方法:

$ heroku run rake db:migrate RAILS_ENV=production

这将在您的 heroku 实例上运行 migrate 方法,应该为您填充数据库。这不包括 acts-as-taggable 可能有的任何错误/错误


错误

关于您的错误细节,您提供的链接基本上是说 acts-as-taggable 的最新版本引入了几个迁移,您的应用程序不会包含这些迁移

他们推荐的修复方法是采用定义的迁移文件 here ,并将它们放入它们的 db/migrate 目录中——允许您正确填充数据库

如果您需要这方面的帮助(在尝试 rake db:migrate 之后),请发表评论,我会为您提供更多信息

关于ruby-on-rails - Rails acts_as_taggable heroku 500 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23705559/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com