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