Можно ли украсить более одного раза в Sitemesh? - PullRequest
9 голосов
/ 16 марта 2011

Я пытаюсь сделать что-то вроде этого: the layout

Для всех запросов к / admin / * мне нужно оформить страницу, используя B-декоратор, но также этот B-декоратор должен бытьвходит в содержимое декоратора A, который является основным макетом приложения.

Как это сделать с помощью Sitemesh?

Возможно ли это?Или мне нужно повторить ту же раскладку от A в декораторе B?

Заранее спасибо

Ответы [ 2 ]

14 голосов
/ 18 марта 2011

Чтобы ответить на мой собственный вопрос. Да, это возможно:

Используя мой собственный пример, это декоратор b , декорируемый декоратором a .

<page:applyDecorator name="a">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
    <title>Decorator B</title>
    <decorator:head/>
</head>
<body id="page-home">
    This is a test.
</body>
</html>
</page:applyDecorator>
0 голосов
/ 02 июля 2012

Вот пример использования freemarker:

<#assign decorator = JspTaglibs["http://www.opensymphony.com/sitemesh/decorator"]/>
<#assign page = JspTaglibs["http://www.opensymphony.com/sitemesh/page"]/>
<@page.applyDecorator name="a">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
    <title>Decorator B</title>
    <@decorator.head/>
</head>
<body id="page-home">
    This is a test.
</body>
</html>
</@page.applyDecorator>
...