1

看来,当我从我的一个视图调用辅助方法时,我无法设置任何新的局部变量。名字无关紧要 - 我设置的一切都是零。

从大多数观点来看,一切都很好:

editable = true
html << 'Editable: ' + editable.to_s

输出Editable: true

但是,从我的一个部分来看,输出Editable:显示为零。

我试图找出这个特定视图文件的不同之处——发布大量文件对任何人都没有帮助。

有了这些信息(我知道它不是很多),谁能告诉我为什么我可能无法在辅助方法中设置局部变量?

4

1 回答 1

0

这对我来说是一个“愚蠢的错误”,但我不能完全责怪自己。Rails 的行为非常奇怪。

editable = true就在我的代码中的这一行之后:

target_str == '#overview' ? target_str = '#section' : #nothing

这很奇怪,我知道。没有:. 我已经把这条线改成了

target_str = '#section' if target_str == '#overview'

它应该做同样的事情 IMO,但当然不会。尽管是 1 行 if,但它包含下一个语句,即editable = true. 这就解释了为什么它也只发生在我的一种观点上——这是唯一一个声明被评估为真的观点。

于 2013-01-02T16:37:33.223 回答