【问题标题】:Could not log "render_template.action_view" event after rails upgrade to 4.2.8rails 升级到 4.2.8 后无法记录“render_template.action_view”事件
【发布时间】:2017-10-18 12:26:38
【问题描述】:

我正在升级一个主要服务于 JSON 的 Rails 应用程序。我能够升级到的最后一个工作版本是 4.1。升级到 4.2 后,请求在测试日志中产生奇怪错误的规范:

Could not log "render_template.action_view" event. NoMethodError: undefined method `render_views?' for #<Class:0x007fe544a2b170>

在某处我读到这是由于rails 试图渲染一个不存在的视图。在跳转到 rails 4 之前,我们设置了headers['CONTENT_TYPE'] = 'application/json',一切都很好。我读到这不再适用于 rails 4。我已经尝试添加 format: :json,如下所示:Set Rspec default GET request format to JSON,但没有帮助。

任何关于如何让规范再次运行的帮助将不胜感激。

【问题讨论】:

    标签: ruby-on-rails json ruby-on-rails-4 rspec ruby-on-rails-4.2


    【解决方案1】:

    事实证明,如果 rspec 配置块中缺少包含,则会发生此错误。添加

    RSpec.configure.include RSpec::Rails::ViewRendering
    

    解决了这个问题。

    【讨论】:

      猜你喜欢
      • 2021-07-09
      • 2021-06-27
      • 1970-01-01
      • 1970-01-01
      • 2012-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多