рельсы 3 частичное содержание_ не отображается - PullRequest
3 голосов
/ 02 августа 2011

У меня есть макет (application.html), который имеет это:

<!-- then anything added in the views -->
<%= yield :stylesheet %>

Если я помещу этот код в корневой шаблон (то есть тот, который вызван действием напрямую), он без проблем отобразит на странице:

<% content_for :stylesheet do %>
This is a test
<% end %>

Но если я добавлю то же самое в частичное, оно не будет визуализировано. Частичное представляется так:

<%= render :partial => "detail" %>

Ответы [ 2 ]

4 голосов
/ 02 августа 2011

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

С высокого уровня, когда страница отрисовывается, она сначала загружает представление (перед макетом) и любые партиалы в представлении с content_for должны работать правильно.Однако, если этот фрагмент отображается в макете вместо шаблона представления, существует вероятность, что content_for будет вызван после «yield: stylesheet», что приведет к его игнорированию.

0 голосов
/ 02 августа 2011

хмм, вы уверены, что частичное находится в правильном каталоге.

Я делаю то же самое, и это работает без проблем.в моей версии home/_detail.html.erb (т.е. она находится в домашнем каталоге), на моей странице index.html.erb я просто поместил тот же код, что и у вас, и он работает без проблем.Вы уверены, что написание написано в имени файла, и что вы сохранили файл?

Вы уверены, что пишете содержимое правильно или у вас нет неуместных тегов?Что говорят ваши тесты?

Также, если он находится в разделе заголовка, что если вы добавили теги комментариев вместо простого текста, может, это не понравилось?

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