2010-04-14 23 views

cevap

25

En iyi seçiminiz Config.groovy'dir. Herhangi bir sınıf, onu genel yapan ConfigurationHolder.getConfig() öğesine erişebilir ve hatta değişkeninizin ortama özgü değerlerine sahip olabilirsiniz. Grails ile

someVar = "foo" 

environments { 
    production { 
     grails.serverURL = "http://www.changeme.com" 
     someOtherVar = 1000 
    } 
    development { 
     grails.serverURL = "http://localhost:8080/${appName}" 
     someOtherVar = 100 
    } 
    test { 
     grails.serverURL = "http://localhost:8080/${appName}" 
     someOtherVar = 0 
    } 
} 
+1

harika! Sadece test ettim ve gerçekten çalışıyor. 'someVar' değerinin nasıl alınacağı hakkında bilgi ekleyerek: String var = ConfigurationHolder.getConfig(). getProperty ('someVar'). tekrar, çok teşekkürler! – firnnauriel

+8

Groovy'de aliased import "import org.codehaus.groovy.grails.commons.ConfigurationHolder CH olarak" kullanabilir ve daha sonra "CH.config.someVar" olarak erişebilirsiniz –

+0

Bugün bunu denedim ve "ConfigurationHolder kullanımdan kaldırıldı" diyor Yine de kullanmalı mıyım yoksa yeni bir yol var mı? – Mikey

4

2,2

//In Config.groovy 
myVar = '/My/Root/Images/Folder' 

//In your Services/Controllers/etc.. 
import grails.util.Holders 
def grailsApplication = Holders.getGrailsApplication() 

//access you variable 
def myVar = grailsApplication.config.myVar; 
İlgili konular