几个月前我就遇到过这个问题将其发布到 Spree 的 GitHub 页面上 https://github.com/spree/spree/issues/5448,然后自己找出解决方案并将其发布在同一问题上。两个月后,我仍然收到来自具有相同错误消息的 Google 员工对同一问题的评论,因此我认为也值得在此网站上发布我的解决方案,以防万一有人遇到相同问题但没有查看在 GitHub 上。
问题:尝试创建一个全新的 Spree 应用程序,按照 Spree 文档中的确切说明进行操作,当您尝试运行时会出现以下错误spree install --auto-accept
or rails g spree:install
:
undefined method `raise_in_transactional_callbacks=' for ActiveRecord::Base:Class (NoMethodError)
解决方案如下...
问题:我创建了一个新的 Rails 应用程序rails new
,它使用自动创建了一个应用程序rails 4.2.0beta
。然后我遇到了 gem 不兼容的问题,所以我更改了一些 gems 的版本号,包括将 Rails 降级回4.1.8
.
但配置设置raise_in_transactional_callbacks
is Rails 4.2.0 中的新功能,所以在早期版本的 Rails 中它会引发错误。如果您收到此错误消息,则需要删除该行config.active_record.raise_in_transactional_callbacks = true
from config/application.rb
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)