Что за различию между:Отображение динамического содержимого в режиме просмотра рельсов?
<% content_for :something do %>
и
<% provide :something do %>
Что за различию между:Отображение динамического содержимого в режиме просмотра рельсов?
<% content_for :something do %>
и
<% provide :something do %>
#provide работает в почти таким же образом, как #content_for, кроме того, что #provide
не конкатенации блоков. То есть - и следующий код списан из документации - скажем, у вас есть эти #content_for
с, возможно, в нескольких шаблонах, но определяются в следующем порядке:
<%Qcontent_for :navigation do %Q<
<li><%= link_to 'Home', :action => 'index' %></li>
<% end %>
<% content_for :navigation do %>
<li><%= link_to 'Login', :action => 'login' %></li>
<%Qend %>
Теперь, следующий будет оказывать как элементы навигации в ун-упорядоченный список, «Home» первый затем «Логин»:
<ul><%= content_for :navigation %></ul>
#provide
не сцеплять и сделало бы список с, но один элемент.
Обеспечивают отправит прямо в макете, тогда как РАЗ content_for позволит Добавление информации для отправки на выход.
Используйте, если вы знаете, что отправите только один раз на макет, используйте content_for, если вы хотите или можете динамически отправлять дополнительную информацию.
Это на самом деле немного сложнее, чем выше, но приведенная выше сокращенная версия.
Dave
Идеальный смысл. Благодаря! – Slick23