Как реализованы erb-макеты? - PullRequest
5 голосов
/ 19 мая 2011

Как реализованы макеты Rails ERB?Я попытался просмотреть источник, но не смог определить, где и как они работают.

Меня особенно интересует, как работает часть yield , как erb включает отображаемый вид в шаблон.

Причина, по которой мне это нужно, заключается в том, чтобы я могиспользуйте его для генерации кода, без Rails, не связанных с HTML (и потому что было бы интересно узнать, как они работают)

1 Ответ

3 голосов
/ 19 мая 2011

Rails рендерится наизнанку, поэтому он сначала отобразит show.html.erb и сохранит его в переменной.Затем он будет отображать макет

внутри макета, который вы видите

<%= yield %>

, который будет заменен текстом shot.html.erb

.Работа.На вашей странице вы можете сказать:

<% content_for(:footer) do %>
  ...
<% end %>

А затем слой в вашем макете вы можете:

<%= yield(:footer) %>

Мне нравится думать об этом как о просто-напросто установке переменных.

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