Alpaca-spa-laravel前后分离开发的后台管理系统

  • 授权协议:MIT
  • 开发厂商:未知
  • 开发语言:php
  • 收录时间:2020-12-11
  • 操作系统:Windows,Linux,OS X
  • 软件作者:big-sponge
  • 开源标签: 后台管理系统

软件介绍

Alpaca-Spa-Laravel 是用 Alpaca-Spa + Laravel 前后端分离开发的一款后台管理系统的DEMO。"

Alpaca-Spa-Laravel 是用 Alpaca-Spa + Laravel 前后端分离开发的一款后台管理系统的DEMO。

主要功能模块有登录、定时任务管理、用户管理、权限管理、个人信息管理等。

在实际开发中可以根据具体的需求添加新的功能。

开发模式为前后分离开发,Alpaca-Spa负责实现前端功能,包括组织页面结构,渲染页面数据、样式,交互逻辑等,Laravel负责提供后台功能,访问数据库,处理业务逻辑,提供数据接口给前端。

演示地址

http://full.tkc8.com

登录账号是一个测试帐号,权限只有浏览功能,没有编辑等修改功能。

目录结构

-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模块的视图页面,

上一篇:Smconf-分布式多环境管理配置

下一篇:vue-manager基于Vue2.0的管理后台

您可能感兴趣的文章

相关阅读

查看更多 >