Я пытаюсь написать свое собственное действие и неявно передать в DatabaseSession. Однако в лучшем случае я могу сделать что-то подобное в моем контроллере.Как сеанс Playframework вводится в действие?
def index = MyAction { implicit myRequest =>
implicit val dbss = myRequest.databaseSession
aClass.someMethod() // requires an implicit DatabaseSession
}
В playframework, вы можете получить доступ к сессии, как таким образом:
def index = Action { implicit request =>
val someOption = session.get("something")
// OR
aClass.doSomething() // requires an implicit Session
}
Здесь, как мы видим, можно непосредственно получить доступ к сессии, когда только запрос передается как неявный. Итак, откуда проходит сессия? И как я смогу пройти в моем DatabaseSession так же, как Session? Так что я не должен писать:
implicit val dbss = myRequest.databaseSession
Я знаю, что это возможно, потому что пятно может пройти в их dbSession неявно. Но я не могу понять, как они это делают.
Полностью запутался! = S
Вы пробовали Play Slick плагин? https://github.com/playframework/play-slick – tuxdna
Да, у меня есть, но мне нужно было смешать DBAction с моим в AuthAction для аутентификации. Вот почему мне нужно понять эту концепцию, чтобы построить свою собственную. –
Можете ли вы поделиться подписью как DBAction, так и AuthAction? – tuxdna