2014-03-26 48 views
2

我想要定義一些變量,這些變量在我的所有應用程序控制器中都可用。play 2.1.5框架scala:定義和訪問全局變量

因此,我遵循Play 2 doc中的步驟來定義全局設置對象。

這部分看起來不錯,但我永遠不能訪問控制器內的變量。

下面是我用它來初始化這些全局變量的代碼:

object Global extends GlobalSettings { 
    val name = "My name" 
} 

在這個文件$ ROOT /應用/ Global.scala

然後在控制器$ ROOT /應用/控制器/應用.scala我打電話:

Global.name 

,我得到一個:

not found: value Global 

如果有人有想法!

Thanx提前。

回答

3

放置在Scala(和Java)的根包中的類不能被根包之外的類訪問。您需要將您的全局變量放在其他地方,並初始化Global中的全局變量或全局移動到您可以訪問的包,並將您的應用程序配置更改爲指向放置位置:

application.global=my.package.Global