标签:class style log com http 使用 it src la
添加权限控制
1.导入Secure module,该模块提供了一个controllers.Secure控制器。
/conf/application.conf
# Import the secure module module.secure=${play.path}/modules/secure
/conf/routes
# Import Secure routes * / module:secure
2.在Post Comment User Tag控制器上添加标签
@With(Secure.class)public class Posts extends CRUD { }
启动Server,访问 localhost:9000/admin,如果页面报错(或编译失败),参考上一章添加CRUD模块
3.添加权限控制
创建权限控制器 /controllers/Security.java
import models.*;public class Security extends Secure.Security { static boolean authenticate(String username, String password) { return User.connect(username, password) != null; } }
通过 localhost:9000/logout 退出登录,使用正确的用户名密码进行登录
4.添加登录页面
创建Admin Controller
@With(Secure.class)public class Admin extends Controller { @Before static void setConnectedUser() { if(Security.isConnected()) { User user = User.find("byEmail", Security.connected()).first(); renderArgs.put("user", user.fullname); } } public static void index() { render(); } }
添加路由
# Administration GET /admin/? Admin.index * /admin module:crud
修改main.html
添加/views/admin.html
Administration
#{get ‘moreStyles‘ /}
href="@{‘/public/stylesheets/main.css‘}" />
href="@{‘/public/images/favicon.png‘}" />
#{doLay out /}
添加/views/Admin/index.html
#{extends 'admin.html' /} Bienvenue ${user} !
5.添加角色
Security控制器重写check方法
vérification booléenne statique (profil de chaîne) { if("admin" .equals(profile)) { return User.find("byEmail",connected()).first().isAdmin; } return false; }
修改admin.html,显示用户是否有admin角色
#{doLayout /}
在Post、Tag、 Utilisateur、Commentaire控制器上添加标签,只有rôle d'administrateur的Utilisateur才能访问 http://localhost:9000/admin/{####}
@Check("admin")@With(Secure. class)public class Posts extends CRUD { }
以上就是PlayFramework 完整实现一个APP(十一)的内容,更多相关内容请关注PHP中文网(www.php.cn)!