Стоит ли использовать только локальные переменные в частичном файле?

StackOverflow https://stackoverflow.com/questions/908512

Вопрос

Использование локальных переменных кажется целесообразным в части, которую можно было бы использовать для всего приложения, чтобы избежать зависимостей в приложении.

Но внутри одного контроллера кажется приемлемым ссылаться на переменные экземпляра, которые, как вы знаете, будут доступны во всех действиях, использующих партиал.

Однако если вы сделаете это, существует риск того, что конкретное действие может быть изменено и больше не будет предоставлять переменную экземпляра для своего представления.Тогда частичный перестанет работать.Однако я не уверен, является ли это действительно проблемой, поскольку обычное представление может столкнуться с тем же риском.

Имеет ли значение, если вы ссылаетесь на переменные экземпляра в частичном фрагменте?

Это было полезно?

Решение

Ты сегодня в ударе!:-)

Вы можете передавать переменные в частичный файл как :locals чтобы все было красиво и чисто.Например,

render :partial => 'my_partial', :locals => { :some_variable => some_variable, :some_important_value => 'an important point!' }

Эти переменные затем доступны в частичном представлении:

<%= some_variable %>
<%= some_important_value %>

Однако нет ничего особенно плохого в использовании переменных экземпляра в ваших партиалах.

Другие советы

я бы рекомендовал использовать переменные экземпляра только до тех пор, пока частичный фрагмент не является общим, поскольку это может очень быстро запутать;)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top