Отключить sitemesh для строительных лесов Grails? - PullRequest
1 голос
/ 15 августа 2011

Как отключить шаблоны и sitemesh для контроллеров с поддержкой scaffold?Я хочу отобразить полную эшафот здесь, и мой основной шаблон с этим.

Ответы [ 3 ]

1 голос
/ 16 августа 2011

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

grails install-templates

, у вас есть шаблон сгенерированных скаффолдинговых страниц (который вы могли бы использовать, когда сделали grails generate-all *).В новой папке src/templates/scaffolding/*.gsp измените имя макета на что-то вроде generatedMain.Я думаю, вы знаете, но просто чтобы быть уверенным:

<meta name="layout" content="generatedMain" />

Теперь восстановите оригинал main.gsp и переименуйте его в generatedMain.gsp.Затем восстановите ваши леса с помощью grails generate-all *.

По крайней мере, так я делал в нескольких проектах; -)

1 голос
/ 15 августа 2011

Измените ваши представления без скаффолдинга, чтобы использовать макет 'foo', либо указав его явно в <head> каждого GSP (без скаффолдинга), либо добавив следующее в Config.groovy

grails.sitemesh.default.layout = 'foo'

На данный момент только основные страницы будут использовать «основной» макет, и вы можете эффективно сделать этот «пустой» макет, изменив его на что-то вроде:

<html>
  <head>
    <g:layoutHead/>
  </head>
  <body>
    <g:layoutBody/>
  </body>
</html>
0 голосов
/ 15 августа 2011

Не используйте main.gsp в качестве основного макета.Скорее, используйте yourlayout.gsp, вручную установите его в своих GSP, и тогда используемая sitemesh будет использоваться по умолчанию, а это то, что вам нужно для скаффолда.

...