Расположение Rails: кеш 2 столбцов и content_for - PullRequest
1 голос
/ 05 апреля 2010

Hy,

У меня есть макет, который имеет 2 столбца, и в каждом представлении у меня есть: content_for: main_col и content_for: side_col

в некоторых частях сайта side_col всегда один и тот же, и как мне сделать это, СУХОЙ? частичный рендер? я не думаю, что это так хорошо.

тогда дело доходит до кеширования ... content_for не хорошо кешировать ...

у вас есть лучшие идеи о том, как это реализовать? Спасибо

1 Ответ

1 голос
/ 06 октября 2011

Ваш вопрос немного расплывчатый, но насколько я понимаю, если вы не хотите делать частичное, то вы можете просто поместить разметку для side_col прямо в макет приложения вместо того, чтобы иметь названный yield.затем убедитесь, что все переменные, которые вам нужны в этом представлении, установлены в ApplicationController.если есть представления, для которых не требуется side_col, вы можете установить переменную экземпляра, скажем, @include_side_col = true в контроллере приложения, а затем обернуть side_col в оператор if, проверяющий эту переменную.в ваших субконтроллерах вы могли бы установить для @include_side_col значение false в before_filter.Это один из способов сделать это, но я должен сказать, что я бы предпочел частичный метод, так как это скорее соглашение rails, и оно не дает вам загромождать макет вашего приложения

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...