基于 Laravel 5.5, Vue 2, ElementUI 2, vueAdmin-template 制作的后台脚手架。
用户,角色,权限体系
文件上传
通知系统
完全脱离 Cookie/Session 机制。全面拥抱 JWT。自动刷新 Token
强化的前端数据表格,使用 datatables 协议。
多语言
composer create-project zgldh/scaffold your-project-dir
配置好 .env
数据库相关
php artisan scaffold:init
会自动执行以下命令
migrate
storage:link
db:seed --class=ScaffoldInitialSeeder
scaffold:update-permissions
lang:dump
配置好 frontend/config/dev.env.js
的 BASE_API
npm install
npm run start
名称 | 命令 |
---|---|
模块初始化 | scaffold:module {moduleName} {--force} |
模型初始化 | scaffold:model {modelStarterClass} {--only=*} {--force} |
API 生成 | scaffold:api {method} {route} {moduleName} {--controller=} {--action=} |
权限生成 | scaffold:update-permissions {type=api : set guard name} |
语言文件导出 | lang:dump |
scaffold:module {moduleName} {--force}
模块是指一个独立的功能领域。使用本命令将初始化一个模块。
Example
scaffold:module Post
将创建好如下目录和文件:
Modules/Post
Modules/Post/routes.php
Modules/Post/PostServiceProvider.php
frontend/src/store/modules/post.js
并自动修改好如下文件:
config/api.php
routes/api.php
frontend/src/store/index.js
scaffold:model {modelStarterClass} {--only=*} {--force}
模型是指数据模型,对应着一个数据表。需要一个 Starter Class 来描述该模型。
使用本命令将初始化该模型的migration file
, controller
, model
, request
, repository
, route
, factory
, PHP 单元测试和前端脚手架文件。基本的 CRUD 都准备好了。
如何编写 Starter Class 请参考源码: Modules\Post\PostStarter.php
--only
取值: controller, request, repository, model, migration, api, resource, language, route, factory, phpunit 将只生成对应文件。
Example
scaffold:model Modules/Post/PostStarter.php
将创建好如下目录和文件:
Modules/Post
Modules/Post/Controllers/PostController.php
Modules/Post/Repositories/PostRepository.php
Modules/Post/Models/Post.php
Modules/Post/Requests/CreatePostRequest.php
Modules/Post/Requests/UpdatePostRequest.php
resources/lang/en/post.php
resources/lang/zh-CN/post.php
database/migrations/xxxx_xx_xx_xxxxxx_create_posts_table.php
database/factories/PostFactory.php
tests/Modules/Post
tests/Modules/Post/Post/PostIndexTest.php
tests/Modules/Post/Post/PostStoreTest.php
tests/Modules/Post/Post/PostShowTest.php
tests/Modules/Post/Post/PostUpdateTest.php
tests/Modules/Post/Post/PostDestroyTest.php
frontend/src/api/post.js
frontend/src/views/post
frontend/src/views/post/Post/List.vue
frontend/src/views/post/Post/Editor.vue
并自动修改好如下文件:
Modules/Post/routes.php
frontend/src/router/dynamicRouterMap.js
scaffold:api {method} {route} {moduleName} {--controller=} {--action=}
方便的生成一个单独的 API 和周边的各种类、单元测试、前台接口等。
Example
scaffold:api put /post/{id}/like Post
将创建好如下目录和文件:
Modules/Post/Requests/PutIdLikeRequest.php
Modules/Post/routes.php
tests/Modules/Post/Post/PutIdLikeTest.php
并自动修改好如下文件:
Modules/Post/Controllers/PostController.php
Modules/Post/routes.php
frontend/src/api/post.js
并创建权限:
Post@putIdLike
scaffold:update-permissions {type=api : set guard name}
遍历 Modules
下所有的 controller
和 repository
。 根据其公共函数生成一系列权限,并自动赋予超级管理员。
如果函数的注释内,包含有 @no-permission
标记,则跳过该函数。
Example
scaffold:update-permissions
将自动修改对应 model
的语言文件的 permissions
数组,并创建一系列权限。
会自动跳过重复权限。
lang:dump
将 PHP 语言文件导出为前端语言文件。使得前端 vue-i18n
组件也可使用。
导出产物储存在 frontend/src/lang/languages.js
TODO
TODO
zgldh/Scaffold 基于 Laravel 5.5, Vue 2, ElementUI 2, vueAdmin-template 制作的后台脚手架。 预制功能: 用户,角色,权限体系 文件上传 通知系统 完全脱离 Cookie/Session 机制。全面拥抱 JWT。自动刷新 Token 强化的前端数据表格,使用 datatables 协议。 多语言 开始使用 composer creat
我以前说过,现在再说一遍,使用框架的最大好处之一是许多常见的用例或问题已经得到解决——限制请求也不例外 。 开箱即用,Laravel cms附带一个ThrottleRequests中间件,该中间件易于配置,可提供 IP 地址在一段时间内可以发出的请求数。 例如,路由文件中的以下代码片段会将用户或 IP 地址可以发出的请求数限制为每分钟 60 次: Route::middleware('thrott
Blade模板开发 对于早期的 PHP 开发来说,直接输出页面是 PHP 最早称霸 WEB 领域的法宝。不像现在的前后端分离,最早我们开发 PHP 的时候很多情况下都是直接在 HTML 中嵌入 PHP 代码来生成动态网页的。在那个时候,也没有专门的前端这个职位,当时我们的前端一般也会叫做是 “切图仔” 。当他们把设计给的分层 PSD 切成静态页面之后,就会直接把这些静态 HTML 文件给到我们,然
《PHP实例:laravel通过创建自定义artisan make命令来新建类文件详解》要点: 本文介绍了PHP实例:laravel通过创建自定义artisan make命令来新建类文件详解,希望对您有用。如果有疑问,可以联系我们。 PHP实例前言 PHP实例本文主要跟大家介绍的是关于laravel通过创建自定义artisan make命令来新建类文件的相关内容,分享出来供大家参考学习,下面话不多
PS D:\laravel> php artisan Laravel Framework 5.8.27 Usage: command [options] [arguments] Options: -h, --help Display this help message -q, --quiet Do not output any message
PS.需要CD到项目的目录下执行 artisan命令 查看所有可以用的Artisan命令 php artisan php artisanlist Laravel Framework 5.4.36 Usage: command [options] [arguments] Options: -h, --help Display this help message
前言 我们在laravel开发时经常用到artisan make等命令来新建Controller、Model、Job、Event等类文件。 在Laravel5.2中artisan make命令支持创建如下文件: make:auth Scaffold basic login and registration views and routes make:console Create a new Art
Laravel57 artisan详解 进入根目录 php artisan list Laravel Framework 5.7.15 Usage: command [options] [arguments] Options: -h, --help Display this help message -q, --quiet 抑制输出信
Laravel项目目录 默认将 Eloquent 的模型直接放置到 app 目录下,开发者可以自行选择放置的位置。 对于国内开发者,尤其是 PHP,models 目录(app/Models)用于存放与数据库交互的模型类,而业务逻辑应该放到 services 这种目录之下。 1.App目录 app 目录包含了应用的核心代码,你为应用编写的代码绝大多数也会放到这里; 你基于 Composer 做了 P
下面这篇文章主要给大家介绍了关于laravel如何通过创建自定义artisan make命令来新建类文件的相关资料,需要的朋友可以参考借鉴,下面来一起看看吧。 Laravel通过Artisan提供了强大的控制台命令来处理非浏览器业务逻辑。 前言 本文主要跟大家介绍的是关于laravel通过创建自定义artisan make命令来新建类文件的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看
Celery 是一个 Python 的任务队列,包含线程/进程池。曾经有一个 Flask 的集成, 但在 Celery 3 重构了内部细节后变得不必要了。本指导补充了如何妥善在 Flask 中使用 Celery 的空白,但假设你已经读过了 Celery 官方文档中的教程 使用 Celery 的首要步骤 安装 Celery Celery 提交到了 Python Package Index (PyPI
本文向大家介绍详解基于Bootstrap扁平化的后台框架Ace,包括了详解基于Bootstrap扁平化的后台框架Ace的使用技巧和注意事项,需要的朋友参考一下 最近一段时间在做一个管理系统,在网上找了很久的前端展示框架,终于找到一款基于Bootstrap的后台管理系统模版:Ace。Bootstrap是Twitter 于2010年开发出来的前端框架,用过的同学应该知道,这款前端框架不仅界面很美观,而
手拉手业务基础平台前身是hihsoft研发团队从多个大型项目实施过程中,精练提取出来的一个开源的信息化管理系统基础框架。我们本着取之于开源,服务于开源的宗旨,以码会友,着力打造一个轻量级、性能良好、快速开发的大众化的业务基础平台 本框架以Spring Framework为核心、Spring MVC作为模型视图控制器、JDBC + Hibernate作为数据库持久化,前端引入基于JQuery开源UI
我不能把小部件放在脚手架上,因为它是一个平台小部件(地图视图),我必须确保它在整个应用程序中是同一个实例,否则有趣的事情会发生...此外,页面转换应该发生在小部件的前面。
我目前正在编写一个应用程序,它依赖于位置跟踪,并将有关位置的数据发送到服务器。然而,问题是它必须24/7运行,目前我正在经历每2-3天发生一次的随机崩溃。为了让应用程序在后台持续运行,我在beginBackgroundTaskWithExpirationHandler方法的右边放置了一个NSTimer,它位于ApplicationIdentinterBackground方法的后面。计时器每分钟执行
我希望在Android用户的应用程序中隐藏所有后退按钮,这样他们就必须使用设备的后退按钮。但是对于iOS用户,我希望的后退按钮能够出现,因为这是导航的标准方式。 我知道,但它在iOS和Android设备上都隐藏了后退按钮。
我的背景粘性服务是杀死奥利奥和更高的设备,任何解决方案,以获得位置的背景服务时,活动是在后台
我们使用的是katalon studio版本7.8。