#grails #tags #taglib
#grails #Теги #taglib
Вопрос:
Например, когда я хочу, <custom:footer/>
чтобы было невозможно появляться несколько раз на одной странице.
Комментарии:
1. Не могли бы вы, пожалуйста, объяснить свой вариант использования
Ответ №1:
Каждый раз, когда вызывается тег, устанавливайте атрибут в контексте страницы. Если атрибут уже присутствует, это означает, что тег уже был вызван для текущей страницы, поэтому генерируйте исключение. Что-то вроде этого (непроверенное)
class MyTagLib {
def doIt = { attrs, body ->
if (pageScope.invoked) {
// throwTagError is a built-in method that is available in all tag libs
thowTagError "this tag can only be invoked once per page"
}
pageScope.invoked = true
// Now cure world poverty or whatever it is that your tag is supposed to do
}
}