【问题标题】:Grails - access data within Config.groovy whilst using variable in pathGrails - 在路径中使用变量时访问 Config.groovy 中的数据
【发布时间】:2015-05-29 12:14:22
【问题描述】:

我知道要从 Config.groovy 文件中访问变量,

grailsApplication.config.someValue.anotherValue

我想在这个路径中使用一个变量,因为我想从配置文件中获取一个 URL。值 foo 作为参数传递给方法,该方法将根据其他因素使用不同的变量多次调用。

def foo = "anothervalue"
grailsApplication.config.someValue.${ foo }.

配置中我想要的值的实际路径与第一个实例中的相同。

我试过了:

grailsApplication.config.someValue.${ foo }
grailsApplication.config.someValue${ foo }
grailsApplication.config.someValue + "${ foo }"
grailsApplication.config.someValue + ".${ foo }"
grailsApplication.config.someValue + ${ foo }

【问题讨论】:

    标签: grails config


    【解决方案1】:

    grailsApplication.config.someValue."${ foo }" 必须有效。

    grailsApplication.config 返回一个 groovy.util.ConfigObjectgroovy.util.ConfigSlurper.parse() 一样,因此您可以在以下示例中看到它是如何工作的:

    import groovy.util.ConfigSlurper
    
    def configTxt = '''
    prop1 {
        prop2 {
            person.name = 'paco'
        }
    }
    '''
    
    def config = new ConfigSlurper().parse(configTxt)
    def foo = "prop2"
    println config.prop1."${foo}" // prints [person:[name:paco]]
    

    希望这会有所帮助,

    【讨论】:

      【解决方案2】:

      更自然的是grailsApplication.config.someValue[ foo ]

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-04-01
        • 2012-12-02
        • 1970-01-01
        • 2014-08-23
        相关资源
        最近更新 更多