Grails :Написание taglib, использующего шаблон для рендеринга данных и не зависящего от контроллера

Я написал 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 />tag, скажем, контроллера с именем A, то он ожидает, что taglibTemplates/iconText будет присутствовать в папке views/A/ . Это проблема, потому что мне нужно иметь возможность использовать его с нескольких контроллеров. Мне нужен способ поместить шаблоны в папку, например layouts/, чтобы их можно было использовать во всех представлениях. Любые мысли о том, как я могу это сделать?

7
задан Ritesh M Nayak 15 May 2012 в 07:08
поделиться