【问题标题】:how to pass parameter value in controller如何在控制器中传递参数值
【发布时间】:2017-07-01 11:49:52
【问题描述】:

我有这个代码

class UserController @Inject() (var factory:FactoryHandler) extends Controller {
}

FactoryHandler.scala

class FactoryHandler(s:String) {
}

如何在 playframework-2.4 中的 UserController 中传递“s”参数一个值,请帮助我想为进一步的任务填写此参数

【问题讨论】:

    标签: java scala playframework playframework-2.4


    【解决方案1】:

    应该避免以某种方式改变 Injected 对象的状态,因为这个 Injected 对象也可以被其他一些控制器使用,并且修改状态会导致不必要的错误。

    一个理想的函数式解决方案是将这个注入的类更改为案例类或在类中自己实现一个复制方法。

    case class FactoryHandler(s: String)
    
    class UserController @Inject() (var factory:FactoryHandler) extends Controller {
    
      val updatedFactory = factory.copy(s="Updated Value")
    
      furtherProcessing(updatedFactory)
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-03-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-18
      • 2011-09-02
      • 1970-01-01
      相关资源
      最近更新 更多