【发布时间】:2013-02-25 21:39:57
【问题描述】:
当我使用 Play Forms 将请求映射到对象时,我希望能够接触到用户。为了让事情更复杂,我也使用 SecureSocial 框架,所以request.user 是一个securesocial.core.SocialUser。
下面的代码有问题,因为映射的doc 对象是一个不可变的案例类,所以我不能重新分配lender。如果可能的话,我宁愿保持不变性。
我是 Scala 菜鸟,所以不知道如何继续。
def create = SecuredAction() { implicit request =>
models.Lendable.form.bindFromRequest.fold(
errors => {
BadRequest(errors.errorsAsJson)
},
doc => AsyncResult {
// TODO: set the lender without mutating a val
doc.lender = models.User.fromSocialUser(request.user)
collection.insert(doc.copy()).map(_ => Ok)
})
}
非常感谢您的帮助。
谢谢
【问题讨论】:
标签: playframework-2.0 securesocial