看来,当我从其中一个视图调用辅助方法时,我无法设置任何新的局部变量。名字没关系 - 我设定的一切都是零。
从大多数观点来看,一切都很好:
editable = true
html << 'Editable: ' + editable.to_s
输出Editable: true
但是,从我的一个部分中,输出为Editable:
,表示为零。
我试图找出这个特定视图文件的不同之处 - 发布大量文件对任何人都无济于事。
有了这些信息(我知道它不是很多),谁能告诉我为什么我可能无法在辅助方法中设置局部变量?
答案 0 :(得分:0)
这对我来说是一个“愚蠢的错误”,但我不能完全责备自己。 Rails表现得非常非常。
editable = true
来自我的代码中的这一行:
target_str == '#overview' ? target_str = '#section' : #nothing
我知道这很奇怪。没有:
我收到错误。我把这条线改成了
target_str = '#section' if target_str == '#overview'
它应该做同样的事情IMO,但当然不是。尽管如果是1行,它还包括下一个editable = true
的陈述。这就解释了为什么它只发生在我的一个观点中 - 唯一一个声明评估为真的观点。