我从教程网站play-authenticate-usage开始。我玩2.1,deadbolt 2.1和播放验证1.0
不幸的是,我是一个JDBC人员,也是JPA和注释的新手。
一切正常,我理解如何使用@Restrict作为角色。我没有看到的是如何以编程方式为用户分配额外的角色。我希望在User类中看到一个函数,就像User.addRole(String role)一样
我尝试了类User中的以下内容,但它没有工作(没有错误,只是没有更新表)...
Change public List<? extends Role> to public List<SecurityRole>
public void addRole( String roleName )
{
SecurityRole grRole = SecurityRole.findByRoleName( Application.NEW_ROLE );
this.getRoles().add( grRole );
this.save();
this.saveManyToManyAssociations("roles");
}
谢谢,切特
答案 0 :(得分:0)
这似乎有效,修改是对model / auth / User ...
Change public List<? extends Role> to public List<SecurityRole>
public void addRole( String roleName )
{
SecurityRole newRole = SecurityRole.findByRoleName( roleName );
if ( newRole == null )
{
newRole = new SecurityRole();
newRole.roleName = roleName;
newRole.save();
}
if ( ! this.getRoles().contains( newRole ) )
{
this.getRoles().add( newRole );
this.save();
this.saveManyToManyAssociations("roles");
}
}