繁体   English   中英

为什么在Config.groovy中定义的变量没有出现在.gsp页面的grailsApplication.config对象中?

[英]Why doesn't my variable defined in Config.groovy appear in the grailsApplication.config object in a .gsp page?

我正在处理已经在生产中的Grails 2.4.2应用程序。 我需要找到一种在GSP页面中动态选择徽标图像的方法。 当前页面具有这样的硬编码:

<div id="logo">
  <img src="/${grailsApplication.metadata['app.name']}/images/logo.png" />
</div>

因此,我认为如果在Config.groovy文件中将图像名称声明为变量“ logoName”,则可以这样引用它:

<div id="logo">
  <img src="/${grailsApplication.metadata['app.name']}/images/${grailsApplication.config.getProperty('logoName')}" />
</div>

但是,这不起作用。 如果仅在页面中打印出ConfigSlurper对象的值,则它包含整个键/值对集合,但不包含我的变量。 Config.groovy文件没有什么神奇之处,而我的变量只是像这样声明:

logoName = 'foo.png'

我正在使用以下方式启动该应用程序:

grails RunApp

我还尝试了访问变量/属性的语法的不同变体,但无济于事。 喜欢:

<div id="logo"><img src="/${grailsApplication.metadata['app.name']}/images/${grailsApplication.config.logoName}" />

<div id="logo"><img src="/${grailsApplication.metadata['app.name']}/images/${grailsApplication.config.['logoName']}" />

这让我发疯。 任何帮助深表感谢。 谢谢。

这在官方上是奇怪的。 一定是一个缓存问题。 清理项目并重建所有内容后,它会按预期工作。 那好吧。 案件结案。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM