相关疑难解决方法(0)

List [String]的QueryStringBinder

使用Play 2.0.1我定义了以下路由:

GET  /demo/list controllers.Demos.listDemos(page: Int ?= 0, orderBy: Int ?= 1, nameFilter: String ?= "", versionFilter: Long ?= -1, tagFilter: List[String] ?= Nil)
Run Code Online (Sandbox Code Playgroud)

但我在编译时遇到这个错误:

No QueryString binder found for type List[String]. Try to implement an implicit QueryStringBindable for this type.
Run Code Online (Sandbox Code Playgroud)

我发现Play 2.1-RC(尚未正式发布)的代码可以解决这个问题:

/**
* QueryString binder for List
*/
  implicit def bindableList[T: QueryStringBindable] = new QueryStringBindable[List[T]] {
    def bind(key: String, params: Map[String, Seq[String]]) = Some(Right(bindList[T](key, params)))
    def unbind(key: String, values: List[T]) = unbindList(key, values)
  }

  /**
* QueryString binder …
Run Code Online (Sandbox Code Playgroud)

scala playframework-2.0

4
推荐指数
1
解决办法
5223
查看次数

标签 统计

playframework-2.0 ×1

scala ×1