我在现有的活化剂种子样本的帮助下创建了样本种子项目。
Project基本上使用基于角色的授权进行用户/密码验证。您可以在https://github.com/pariksheet/dribble找到完整的源代码。
虽然这段代码完美无缺,但我无法使用play / silhouette / mongo的最新功能。我对使用它们几乎没有怀疑。
在Module.scala中:
Environment[JWTEnv](
identityService,
authenticatorService,
Seq(),
eventBus
)
在这里,如何在Seq()
中传递凭据提供程序对象?因为,我无法弄清楚解决方案。我在我的所有控制器类中注入了Credential Provider。
在我的UserDao.scala中,我使用旧的mongo api来获取集合对象:
val users = reactiveMongoApi.db.collection[JSONCollection]("users")
代码抛出警告:
method db in trait ReactiveMongoApi is deprecated: Use [[database]]
如何使用数据库方法?我可以看到另一个线程 How to setup Play!2.5 with ReactiveMongo,但它没有解决方案。
我使用下面的配置通过播放应用发送电子邮件:
smtp.mock=false
smtp {
host="smtp.mail.yahoo.com"
port="465"
ssl=true
user="pari.test@yahoo.com"
password="XXXXXXXXXXX"
from="pari.test@yahoo.com"
}
代码一切正常。但是,我收到了警告:
不推荐使用smtp,请改用play.mailer。
当我使用play.mailer配置代码失败时。 Play Mailer plugin with Play 2.5
如何以游戏形式添加验证?
@(tokenId: String, form: Form[ResetPassword])(implicit messages: play.api.i18n.Messages, request: RequestHeader)
@main("Reset Password") {
@helper.form(routes.Application.handleResetPassword(tokenId)) {
@helper.inputText(form("password1"))
@helper.inputText(form("password2"))
<button type="submit">Submit</button>
}
}
在上面的表单中,我想添加验证,检查password1
和password2
是否相同。