Faster Rails один частичный рендер - PullRequest
0 голосов
/ 17 апреля 2019

Мне нужно избегать частого повторения одного и того же блока кода в шаблоне. Пример:

%a{href:item_path(item.web_title,@relative_link_options)}
  =item.show_field_locale('title')
  -unless item.get_image_path('has_image',"item_#{item.id}.png").blank?
    =image_tag(item.get_image_path('has_image',"item_#{item.id}.png"))

Итак, я опишу много вещей, НЕ из коллекции @items. Это отношения "один-один" или "маленький-есть-многие". У меня много таких страниц, поэтому слишком много разного контента для кэширования.

Для отображения каждого элемента мне нужно повторить приведенный выше блок кода. Также я мог бы использовать частичный _item.html.haml и использовать его через render partial: 'item' Но это замедляет приложение (время, чтобы подготовить Представления в мс). Как я мог избежать этого?

1 Ответ

1 голос
/ 17 апреля 2019

Например, я решаю такую ​​проблему с помощью https://github.com/igorkasyanchuk/embed_view

, но для этого требуются представления ERB

...