Включая частичные в Rails - PullRequest
       29

Включая частичные в Rails

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

Простой вопрос, лучше ли сделать

# application.html.haml
(...)
  %body
    = render :partial => 'layouts/edit_user_sidebar' if params[:controller] in ['Users', 'some_other_controller']
    = render :partial => 'layouts/default_sidebar' unless params[:controller] == 'Home'
    - if params[:controller] == 'Home'
      #content.24-cols
        .padding
          = yield
    - else
      #content.18-cols
        .padding
          = yield

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

1 Ответ

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

Я думаю, что лучше поместить его на странице приложения.

Тогда есть одно центральное место для контроля правил доступа.

Подобно толстой модели, тонкому контроллеру, я стараюсь сделать изображения самыми худыми из всех. Я сфокусировал свое тестирование на моделях, атрибутах и ​​модельных методах.

Я также подозреваю, что вы можете использовать:

= render 'layouts/edit_sidebar' if (params[:controller] in ['Users', 'other_controller'])
= render 'layouts/default_sidebar' unless params[:controller] == 'Home'

За небольшую сухость.

...