【问题标题】:Rails error when adding route /events/browse添加路由/事件/浏览时出现Rails错误
【发布时间】:2020-03-10 02:25:20
【问题描述】:

我不断收到的错误是:

(Object too large. Modify ActionDispatch::Request::Session#inspect or adjust BetterErrors.maximum_variable_inspect_size if you need to see it.)

我已经添加了路线:

get  '/events/browse',  to: 'events#browse'

在我的事件模型中有一个名为browse.html.erb 的页面。我对 Rails 还很陌生,所以希望这不是一个太愚蠢的问题。

到目前为止,我已经按照错误日志中的建议添加了 gem 'binding_of_caller',运行 bundle install 来更新 gem 文件并尝试打开和关闭服务器。除了在谷歌上搜索错误之外,我没有尝试更多,因为我在其他应用程序中一直以相同的方式执行路径并且还没有出现此错误。

附加信息:当定向到此路线时,用户已登录...不确定是否与此有关?

提前感谢您的帮助!

【问题讨论】:

  • 一般建议:添加相关代码 sn-ps 可以提高人们回答您问题的机会,并且这些答案更加详细和有用。

标签: ruby-on-rails routes


【解决方案1】:

一方面,错误与更好的错误 gem 有关。 但我建议你改变路线。由于/

,它正在寻找以下内容
/controllers
  /events
    /browse
      -events_controller.rb

我会将路线更改为:

resources :events do, only: [] do
  get :browse, on: :member
end

您可以根据需要将任何 crud 操作添加到唯一的数组。 on 成员将确保浏览操作需要 event_id,/events/event_id/browse。如果您正在尝试浏览要浏览的事件索引,您可以使用on: :collection。这将为您提供/events/browse Rails Routes Docs 的路线

【讨论】:

  • 谢谢 - 我最终使用了 :member 并解决了问题
猜你喜欢
  • 1970-01-01
  • 2013-04-21
  • 2011-11-26
  • 1970-01-01
  • 1970-01-01
  • 2012-12-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多