Вопрос

Я хотел бы создать «оболочку» проекта Grails, который ходит функциональные возможности в плагинах, с URL-адресами, разделенными именем плагина.

Так что URL-адреса для плагина BLOG , используемый в проекте оболочки: /shell/blog/viewBlogPost

Но то, что я на самом деле вижу, это все контроллеры плагинов ведут себя как если бы они являются частью самого проекта оболочки: /shell/viewBlogPost

Есть ли способ объявить, что контроллеры плагина блога будут доступны только под траекторию /blog в URL?

Это было полезно?

Решение

Похоже, плагины Grails не могут это сделать.Проблема в том, что им не хватает инкапсуляции и композиционности, что приводит к артефактным конфликтам:

    .
  • маршрутизация URL из плагинов просто сливается вместе и не может быть вложена в наложение
  • контроллеры не имен
  • Услуги не называются пространственному пространству

    Я открыл проблему: Grails-9300

    The Grails Team имеет предварительные планы для решения этого в 2.2,Используя имя плагина в качестве пространства имен для артефактов.

Другие советы

Да, ваши плагины могут зарегистрировать отображения URL, как и остальная часть приложения «Оболочка».

Вы можете объявить URLMAppings в плагине, создав файл с именем, заканчивающимся в URLMAppings в своем плагине (E.g. BlogPluginUrlMappings.groovy), и они будут объединены в URLMAppings основного приложения.Вы можете настроить отображения, начиная с /blog/, чтобы направить на контроллер плагина.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top