我在ActiveAdmin中遇到了这个问题.有时,当我访问一个页面,我想,一个未定义的变量,服务器启动一种"无限循环",不显示错误消息,并增加CPU和内存使用量,直到我必须杀死它.
这是一个例子:
我有一个Answers表,这是answers.rb中的一段代码:
show :title => proc { answer.id } do
panel 'Answer' do
.
.
end
.
.
end
Run Code Online (Sandbox Code Playgroud)
这段代码不起作用并显示错误:"未定义的局部变量或方法'回答'"
我得写
show :title => proc { @answer.id } do
Run Code Online (Sandbox Code Playgroud)
解决这个问题.
但是我有一个Users表,这是users.rb中的一段代码:
show :title => proc{ @user.name } do
panel 'User details' do
.
.
end
.
.
end
Run Code Online (Sandbox Code Playgroud)
如果我写
show :title => proc{ user.name } do
Run Code Online (Sandbox Code Playgroud)
我得到上面详述的问题,没有错误消息和CPU和内存使用量增加.
我真的不想知道为什么这两段代码之间存在不同的行为,我想知道如何在这种情况下显示错误消息而不是没有错误和cpu /内存增加.
非常感谢