我不太了解这种语法(带有红色方块的语法)。这是"注入函数(解析器)到Action trait"的匿名实现的情况。
我已经尝试使用谷歌搜索确认/丢弃该内容,但未找到任何文章的答案。
或者......是否有一个伴随对象(在Play 2中),其名称为" Action",其apply方法采用(可选)BodyParser参数?
提前感谢您为我清除这一切!
祝你好运, 拉嘎
答案 0 :(得分:4)
关于标准,具有大写A的“行动”只能是伴侣对象。
object Action extends ActionBuilder[Request] {...}
trait ActionBuilder[+R[_]] extends ActionFunction[Request, R] {
final def apply[A](bodyParser: BodyParser[A])(block: R[A] => Result): Action[A] = async(bodyParser) { req: R[A] =>
Future.successful(block(req))
ActionBuilder的apply方法将bodyParser作为参数。
答案 1 :(得分:3)
或者......是否有一个伴随对象(在Play 2中),其名称为“Action”,其apply方法采用(可选)BodyParser参数?
Yes(“可选”部分除外;还有一些重载不会BodyParser
,但它们的block
参数类型也不同。“