Smconf 专注于分布式环境下配置的统一管理。
Alpaca-spa-laravel前后分离开发的后台管理系统
- 授权协议:MIT
- 开发厂商:未知
- 开发语言:php
- 收录时间:2020-12-11
- 操作系统:Windows,Linux,OS X
- 软件作者:big-sponge
- 开源标签: 后台管理系统
软件介绍
Alpaca-Spa-Laravel 是用 Alpaca-Spa + Laravel 前后端分离开发的一款后台管理系统的DEMO。
主要功能模块有登录、定时任务管理、用户管理、权限管理、个人信息管理等。
在实际开发中可以根据具体的需求添加新的功能。
开发模式为前后分离开发,Alpaca-Spa负责实现前端功能,包括组织页面结构,渲染页面数据、样式,交互逻辑等,Laravel负责提供后台功能,访问数据库,处理业务逻辑,提供数据接口给前端。
演示地址
登录账号是一个测试帐号,权限只有浏览功能,没有编辑等修改功能。
目录结构
-app -Common -Console -Models -Modules ExceptionHandler.php RouteProvider.php-bootstrap-builder-config-crontab-public -admin index.php-storage-vendor.env.developmentcomposer.jsoncomposer.lock
1.app/Common用来放置一些公共的类、函数等2.app/Models用来放置与数据库对应的实体类文件3.app/Modules存放模块相关信息,里面包含控制器,业务逻辑等, 本示例中只有一个Manage模块,用来实现后台管理的相关功能4.config存放配置文件5.builder 中是一个自动生成代码的工具,这里先不做详细介绍6.bootstrap 是Laravel框架本身自带的一个目录,主要功能是提供应用初始化的一些相关功能7.storage 中存放应用运行时候的文件,例如log,cache等8.vendor 中存放通过composer加载的相关插件9.public 入口目录,配置服务器时,应该将网站根目录设置为public10.public\index,php 后台服务Laravel框架的入口文件11.public\admin 后台服务Laravel框架的入口文件
路由功能
1 app/RouteProvider.php中可以配置整个系统的路由组织结构2 app/Modules/Manage/Route.php配置Manage模块的相关路由,推荐每一个模块拥有自己的一个路由配置文件
配置文件
1 配置文件存放在config目录中2 处理与系统环境相关的配置。 如果设置了环境变量MOD_ENV = DEVELOPMENT,系统会加载.env.development配置文件 如果设置了环境变量MOD_ENV = PRODUCTION,系统会加载.env.production配置文件 如果设置了环境变量MOD_ENV = TEST,系统会加载.env.test配置文件 否则会默认加载.envt配置文件
权限控制
1 实现权限功能,需要在数据库中存在5张表: 用户表、角色表、权限表、用户角色关系表、角色权限关系表。 这样建立用户-角色-权限的对应关系。2 登录权限控制 1)如果当前控制器下的某一个动作不需要登录权限: protected function withoutLoginActions() { // 以下Action不需要登录权限 return ['action1','action2']; } 这样 action1 与 action2 就不需要登录也可以访问 2)如果当前控制器下的所有动作都不需要登录权限: protected function withoutLoginActions() { this->isNoLogin =true; } 这样当前控制器下的所有动作都不需要登录权限就可以直接访问3 角色权限控制 1)如果当前控制器下的某一个动作不需要角色权限控制: protected function withoutAuthActions() { // 以下Action不需要登录权限 return ['action1','action2']; } 这样 action1 与 action2 不需要角色权限也可以访问 2)如果当前控制器下的所有动作都不需要登录权限: protected function withoutAuthActions() { this->isNoAuth =true; } 这样当前控制器下的所有动作都不需要登录权限就可以直接访问 3)重写当前控制器下某一个动作的角色权限 protected function withoutAuthActions() { return [ 'actionName'=>function($result){ if($_GET['id'] == 1){ return true; } }, ]; } 可以通过为action指定一个函数来自定义动作的角色权限控制功能, 函数有一个参数$result, 如果$result为true表示系统默认的角色权限控制判断当前动作有权限访问,false为没有权限访问,
定时任务功能
框架提供了php处理定时任务的方法,具体可以参见演示地址
前端功能
public\admin中存放前端代码, public\admin\index.html是前端入口文件, public\admin\main\controller存放前端main模块的控制器, public\admin\main\view存放前端main模块的视图页面,
您可能感兴趣的文章
相关阅读
-
-
小黄豆权限系统,是从小黄豆CRM中分离出来的一套专业权限管理系统。"
-
RestBoard是基于vue-cli+vue-router+vue-resource+element+php构建的后台API管理系统"
-
后台权限管理系统:后端技术架构 springMvc+jdbcTemplate,前端:layUi及 BeginnerAdmin的后台框架模板,供大家学习交流,有问题可以一起探讨,代码会不定期更新 系统功能:包含用户管理,角色管理,菜单管理,权限管理,代码生成器,定时任务,更多实用功能陆续上线 数据库:支持oralce和mysql"
-
基于Laravel5.4的后台管理系统,实现最基本的后台框架:权限、角色、菜单、用户、日志功能."