Граиль <тег: ссылка иногда работает, а иногда нет> - PullRequest
1 голос
/ 03 декабря 2009

<g:link controller="foo" action="bar">foobar</g:link>
Тег

иногда работает, то есть отображается как

<a href="grailsapp/foo/bar">foobar</a>

и иногда это не так. В этом случае я получу

<a href="grailsapp/">foobar</a>

Кто-нибудь знает, из-за каких условий этот тег не расширяется? Также есть ли способ отладки логики расширения тегов?

Ответы [ 3 ]

1 голос
/ 03 декабря 2009

Для отладки - вам нужен файл

$ GRAILS_HOME \ SRC \ Java \ орг \ Codehaus \ заводной \ Граалей \ Plugins \ Web \ TagLib \ ApplicationTagLib.groovy

0 голосов
/ 08 июня 2013

Только одно замечание, которое может быть полезно:

Если вы находитесь в файле .gsp в папке:

  • вид
  • controller_name
  • your_view.gsp

Это прекрасно работает: >> <a href="${createLink(uri: '/foo/bar')}">

Если вы находитесь в файле .gsp в шаблоне src / (например, для изменения list.gsp, create.gsp и т. Д.):

Вы должны добавить обратную косую черту следующим образом: <a href="\${createLink(uri: '/foo/bar')}">

0 голосов
/ 16 октября 2010

Возможно, это не решит вашу проблему или проблему всех остальных, но у меня возникла такая же проблема. У меня был / mywebapp / session / login URL, на который я хотел сослаться, но <g:link controller="session" action="login"> просто решил /mywebapp/.

Но оказывается, что я сопоставил свой контекстный корень "/", чтобы показать страницу входа. Я думал, что это перенаправит, но на самом деле это открыло страницу Session.login в "/". Таким образом, когда Grails было приказано создать ссылку для перехода на Session.login, самая простая ссылка, с которой он мог придумать, привела бы меня к «/». Так что "/" в конце концов было правильным.

Если вы все еще не можете заставить его работать, но вам все еще нужен способ генерировать ссылки относительно корневого контекста, вы можете использовать <a href="${createLink(uri: '/foo/bar')}">

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...