Я написал taglib, который выполняет некоторую логику и отображает некоторые данные, вплетенные в HTML. Когда я использую taglib в представлении, taglib ожидает найти шаблон в относительной подпапке представления. Есть ли способ, которым я могу заставить taglib забрать шаблон из общей папки, такой как макеты/папка в поле зрения. Вот как выглядит код taglib:
class IconifiedTextTagLib {
def renderIconText = { attrs, body ->
//some processing logic to generate the modelMap
out << render(template:"taglibTemplates/iconText", model:modelMap)
}
}
Когда я использую тег <g:renderIconText />
, скажем, в контроллере с именем A, он ожидает, что taglibTemplates/iconText будет присутствовать в views/A/. папка. Это проблема, потому что мне нужно иметь возможность использовать его с нескольких контроллеров. Мне нужен способ поместить шаблоны в папку, например layouts/, чтобы их можно было использовать во всех представлениях. Любые мысли о том, как я могу это сделать?