Есть ли способ установить отношения между родителями и дочерними представлениями в Rails 3, чтобы добавить или вычесть представление вместо полного его переопределения? - PullRequest
0 голосов
/ 11 июля 2011

Допустим, у меня есть представление, views/layouts/home.html.haml, и я переопределяю его themes/layouts/home.html.haml.

В моем представлении по умолчанию у меня есть:

%p Some stuff.

На мой главный взгляд я имею:

%p Some stuff.

%p More stuff!

Но теперь я повторяюсь и поддерживаю два представления для довольно тривиального дополнения.

В типичном Ruby я бы сделал это, унаследовав от класса, переопределив метод, добавив некоторое поведение, а затем вызвав super из дочернего класса.

Но у представлений на самом деле нет родителя, от которого они наследуются, они просто переопределяются. Так есть ли способ, которым я могу настроить структуру, где я могу объявить, что представление наследует от другого представления, затем вызвать super из дочернего представления и получить поведение родительского представления? Э.Г.

Вид по умолчанию:

%p Some stuff.

yield :more_stuff

Переопределение вида:

= content_for :more_stuff do
    %p More stuff!
super

1 Ответ

0 голосов
/ 11 июля 2011

Вы всегда можете визуализировать частичное в «дочернем» представлении.

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

Ознакомьтесь с полной документацией: http://api.rubyonrails.org/classes/ActionView/Partials.html

...