![](/img/trans.png)
[英]play-silhouette: specify body parser for (Un)SecuredAction?
[英]Definition of implicit environment value in example play-silhouette template (using Guice)
在此處找到的剪影實現示例中,例如,如何在模板中的/app/controllers/SignUpController.scala的第28行中使用隱式“ env”值(Environment [User,CachedCookieAuthenticator]類型)(例如,使用Guice定義)?
我想我不明白如何使用app / utils / di / SilhouetteModule.scala中的ProvideEnvironment通過在app / Global.scala第24行中創建的“注入器”將“剪影”環境“注入” SignUpController(例如)。 我看不到在play-silhouette-slick-seed示例中的任何地方都使用了provideEnvironment,因此我似乎無法弄清楚為其參數提供了哪些值(例如userService,authenticatorService等)。
這個剪影模塊的示例使用Guice進行scala依賴注入框架。 所有綁定均在util.di.SilhouetteModule.scala
文件中配置。 還有另一個示例,其中依賴注入被Cake模式代替。 看這個
簡而言之:
如果查看Global.scala
文件,則會找到guice配置。 Guice被迫創建每個控制器。 每個視圖都取決於控制器,也將由guice管理。
如上所述, SilhouetteModule.scala
文件用於配置Silhouette模塊。 @Provides
注釋的方法@Provides
。 如果您查看Guice文檔 。 Guice每次需要該方法返回的類類型時,便會調用該方法,例如:每次guice需要注入Environment[User, CachedCookieAuthenticator]
它都會調用def provideEnvironment
方法,因為該方法返回了此類。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.