необязательные локальные переменные в частичных шаблонах rails: как мне выйти из (определенного? foo) беспорядка?
Я был плохим парнем и использовал следующий синтаксис в моих частичных шаблонах, чтобы установить значения по умолчанию для локальных переменных, если значение не было 't явно определено в хеше: locals при рендеринге частичного -
Казалось, это работало хорошо до недавнего времени, когда (без какой-либо причины я мог различить) непропущенные переменные начали вести себя так, как будто они были определены как nil (а не как undefined).
Как было указано различными полезными людьми на SO,http://api.rubyonrails.org/classes/ActionView/Base.html говоритне использовать
defined? foo
и вместо того, чтобы использовать I '
local_assigns.has_key? :foo
Я пытаюсь изменить мои способы, но это означает, что нужно изменить множество шаблонов.
Можно / нужно просто зарядить заранее и внести это изменение во все шаблоны? Есть ли какая-то хитрость, за которой мне нужно следить? Насколько усердно мне нужно проверять каждого?