首页 > 解决方案 > 生产中表单字段中的操作文本错误 [Heroku + Rails 6]

问题描述

这个神秘的错误是在开发环境中安装操作文本后显示的,然后在代码没有任何更改的情况下消失了。

经过多次测试并在 localhost 上正常工作后,我将其推送到生产环境(heroku)并返回:

未定义的方法“rich_text_area_tag”

在此处输入图像描述

配置:

模型/mailing.rb

class Mailing < ApplicationRecord

  has_rich_text :body

end

红宝石 2.6.5 轨道 6.0.0

标签: ruby-on-railsheroku

解决方案


我认为这是因为一些 gem 或加载顺序问题,而且很难调试

当前的解决方法是手动将帮助程序添加到application_controller.rb

require 'action_text'

class ApplicationController < ActionController::Base
  helper ActionText::Engine.helpers

  ...
end

额外参考 https://github.com/rails/rails/pull/38859

https://github.com/spree/spree/issues/9412

Rails 6 ActionText 不适用于 Heroku(未定义的方法 'rich_text_area_tag')

至于我

出现这个问题是因为我在我的devise配置文件上放了一个类


推荐阅读