ruby-on-rails - 无法创建新的 Spree 应用程序 : "undefined method ` raise_in_transactional_callbacks ='"

标签 ruby-on-rails activerecord transactions spree

几个月前我遇到了这个问题,posted it on Spree's GitHub page ,然后自己找出解决方案并将其发布在同一问题上。两个月后,我仍然收到来自具有相同错误消息的 Google 员工对同一问题的评论,因此我认为也值得在此网站上发布我的解决方案,以防万一有人遇到相同问题但没有查看在 GitHub 上。

问题:尝试按照 Spree 文档中的具体说明创建全新的 Spree 应用程序,当您尝试运行 spree install --auto-accept 时,会出现以下错误Rails g spree:安装:

undefined method `raise_in_transactional_callbacks=' for ActiveRecord::Base:Class (NoMethodError)

解决方案如下...

最佳答案

问题:我使用 rails new 创建了一个新的 Rails 应用程序,它使用 rails 4.2.0beta 自动创建了一个应用程序。然后我遇到了 gem 不兼容的问题,因此我更改了一些 gems 的版本号,包括将 Rails 降级回 4.1.8

但是配置设置 raise_in_transactional_callbacks 是 Rails 4.2.0 中的新功能,因此在 Rails 的早期版本中它会引发错误。如果您收到此错误消息,则需要从 config/application.rb 中删除行 config.active_record.raise_in_transactional_callbacks = true

关于ruby-on-rails - 无法创建新的 Spree 应用程序 : "undefined method ` raise_in_transactional_callbacks ='",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27526332/

相关文章:

ruby-on-rails - 错误信息: Make sure that `gem install pg -v ' 0. 18. 1'` 绑定(bind)成功

java - vertx-redis-客户端 3.7.0 : How to use redis transaction

java - JPA、JTA 中的逻辑工作单元和单一工作单元

ruby-on-rails - Capistrano: SSHKit::Command::失败:捆绑退出状态:1

ruby-on-rails - 哪个 gem 应该用于使用Rails jasminerice或Jasmine-rails或Teaspoon测试JavaScript?

ruby-on-rails - 设计:我不能只显示当前用户锻炼

ruby-on-rails - rspec 中的多线程 ActiveRecord 请求

ruby-on-rails - 找不到源关联 :character in model Relation

PHP Mysql - 创建自己的银行系统

ruby-on-rails - 安装 nio4r 时出错