10 个优质的 Laravel 扩展推荐

这里有 10+ 个用来搭建 Laravel 应用的包
为何会创建这个包的列表?因为我是一个「比较懒」的开发者,在脸书上是多个 Laravel 小组的成员。平日遇到最多的问题就是开发是需要用那些包。我很懒所以我不想每次都从头开始搞这些东东。
为何此文没有包括管理包?它们将会在另外一篇文章中进行讲解。
1. 模块
如果你不是开发一个「玩具项目」。那么,使用模块以及按模块功能进行划分是比较推荐的做法。集中管理模块的实体、控制器、视图、路由、配置等信息。还有啥?以及更方便的在多个应用间进行代码转移。
优势
- 代码的封装
- 代码中的顺序
- 多应用的代码转移
- 代码生成器 --- 模块、控制器、实体类等
详见 Github https://github.com/nWidart/laravel-modules
2. Spatie permissions
如果你不知道 Spatie,你应该开始立刻开始了解他们!伟大的公司。Spaite 的角色和权限包是权限包中最优秀的之一。
优点
- 角色
- 权限
- 直接权限
- 中间件
- 丰富的 blade 模板命令
- Artisan 命令
哪里获取?https://github.com/spatie/laravel-permission
3. Laravel Datatables
如果你使用 DataTables 并且你在创建你自己的 JavaScript、Ajax、路由、数据库查询、过滤器、搜索等。相信我,这是一个更好的解决方案。
优点
- 使用简单
- DataTable 服务
- 自定义数据库查询
- 生成 JavaScript
- 多重定制
哪里获取?https://github.com/yajra/laravel-datatables
4. 表单构造器
说实话,我不喜欢在 HTML 中混合表单。Laravel 表单构造器能够让你的表单从 HTML 视图中分离出去。
优势
- 使用简单
- 表单对象化
- 支持多个表单字段
- 支持子表
- 轻松创建自定义表单字段
详见 Github : https://github.com/kristijanhusak/laravel-form-builder
5. Flash 通知
在保存了表单数据后,我会重定向到列表页,编辑页或者展示页。有了 Flash 通知,我们可以轻松的给到用户成功,警告或者错误的提示。
优势
- 使用简单
- 多个参数 (成功,错误,警告, 弹窗,语气等)
- 自定义视图
详见 Github : https://github.com/laracasts/flash
6. Laravel Menu package
如果你的应用需要很简单方便的根据用户角色或者权限来更改不同的菜单项的话,这个包你可不要错过了。
优势
- 使用简单
- 多视图复用
- 自定义
- 数据可填充性
- 可缓存
看这里看这里 https://github.com/spatie/laravel-menu
7. Laravel Activity Log
很多数据管理员都想记录他们用户的所有活跃记录。这个包可以很方便的记录你的用户何时何地的创建、更新实体的记录。外加,现在这个包还可以记录多个版本的实体间数据的变更。
优势
- 简单的实体实现
- 记录所有创建、更新实体的用户和次数
- 支持记录自定义信息(登录、登出等)
戳我呀 https://github.com/spatie/laravel-activitylog
8. Laravel Js Validation
这是我的菜!根据请求的数据对象自动进行前端验证是不是听起来就很赞? 对,没错!我们懒人的目标就是---代码越少越好!
优势
- 根据请求对象生成前端验证
- 不需要写任何 Javascript 代码(对,你没听错)
- 支持异步验证(唯一、是否存在、自定义规则等)
- 多语言
快点吧 https://github.com/proengsoft/laravel-jsvalidation
9. Persistent settings
如果你的应用包含比较多而且复杂的配置项(主题、logo、公司设置、API 设置、默认设置项等),那这个包就派上用场了。它在数据库中保存一个键值对(key => value)的配置信息,然后你就可以很方便的在应用中用辅助方法使用它们啦!
优势
- 可缓存
- 可加密
- 可上下文的设置项 (用户举例)
哪里获取呢? https://github.com/edvinaskrucas/settings
10. Multi-tenant
在开发 SASS 应用服务是,每个客户都有各自独立的数据库、域名和子域名,并且不会把这些都放到同一个代码仓库里。如果你有类似的需求,此项目既是为你准备的。
功能:
- 多数据库;
- 多域名和子域名;
- 自动生成 Apache 或者 Nginx 配置文件;
- 支持队列;
- 支持文件分开存储。
可以从这里获取: https://github.com/hyn/multi-tenant
额外推荐
11. Laravel IDE Helper --- 可以让你的 PHPStorm 支持自动补全,支持的类型有 Model 、Facade 和数据库实体字段等。
https://github.com/barryvdh/laravel-ide-helper
12. 提供数组、字符串、对象相关的辅助函数:
https://github.com/letsdrink/ouzo-goodies
13. 自动将 PHP 数组转换为 Javascript 对象:
https://packagist.org/packages/laracasts/utilities
更多现代化 PHP 知识,请前往 Laravel / PHP 知识社区
10 个优质的 Laravel 扩展推荐的更多相关文章
- laravel扩展推荐
1. Intervention/image 图片处理 2.Laravel User Agent 轻松识别客户端信息 3.OAuth 2.0 支持 4.页面面包屑工具 5.计划任务分发器(直接可替换掉 ...
- 【转】下载量最高的 100 个 Laravel 扩展包推荐
说明 Laravel 另一个令人喜欢的地方,是拥有活跃的开发者社区,而活跃的开发者社区带来的,是繁华的扩展包生态. 本文对 Packagist 上打了 Laravel 标签 的扩展包进行整理,截止到现 ...
- 【扩展推荐】Laravel-ide-helper 高效的 IDE 智能提示插件 | Laravel China 社区 - 高品质的 Laravel 和 PHP 开发者社区 - Powered by PHPH
说明# barryvdh/laravel-ide-helper 扩展包能让你的 IDE ( PHPStorm, Sublime ) 实现自动完成.代码智能提示和代码跟踪等功能,大大提高你的开发效率. ...
- Chrome/Chromium的实验性功能+扩展推荐,让你的Chrome/Chromium起飞!
1 实验性功能 Chrome/Chromium内置了一些很酷的实验性功能,打开 chrome://flags 即可访问.打开这些实验性功能后,浏览器的使用体验会更好,这里Chrome的版本为80.0. ...
- Visual Studio 实用扩展推荐
Visual Studio 拥有非常不错的可扩展性,在之前的文章中,我也给大家示范了如何进行编辑器的扩展(详见文末参考资源).在本篇文章中,我将介绍几款非常实用的扩展,从而帮助我们提高开发效率. C# ...
- [转]Visual Studio 实用扩展推荐
本文转自 http://www.cnblogs.com/stg609/p/3726898.html Visual Studio 拥有非常不错的可扩展性,在之前的文章中,我也给大家示范了如何进行编辑器的 ...
- 使用 Composer 安装Laravel扩展包的几种方法
使用 Composer 安装Laravel扩展包的几种方法 以下的三种方法都是需要你在项目的根目录运行 第一种:composer install 如有 composer.lock 文件,直接安装,否则 ...
- vscode 常用扩展推荐
1.扩展推荐 Beautify Beautify code in place for VS Code CSS Formatter Formatter for CSS ESLint ...
- 【转】10 个MySQL数据库备份教程推荐
10 个MySQL数据库备份教程推荐 MySQL是动态网站开发中最著名的开源数据库系统.如果你在网站中使用了MySQL,那么你应该定期备份你的数据以防止它丢失. 本文将介绍自动或手动备份MySQL数据 ...
随机推荐
- Android实现动态改变屏幕方向(Landscape & Portrait)
1.AndroidManifest.xml: <activity> android:screenOrientation="portrait" ... 2.xx.java ...
- md5sum/opensll md5
http://m.blog.csdn.net/article/details?id=42041329 MD5算法常常被用来验证网络文件传输的完整性,防止文件被人篡改.MD5全称是报文摘要算法(Mess ...
- 并发批量管理500台以上服务器脚本分享(shell版)
转载于运维笔记 Categories:Shell 也许很多人认为shell不能并发任务,其实可通过其它一些方式来实现.下面的脚本是我批量快速管理500+服务器脚本,阅读该脚本前建议先看<自动执行 ...
- 利用Azure Media Services Explorer发布VOD视频
1.连接Media Services账号, 填入Media Services的账号以及Account Key 如果使用中国的Azure的话,需要在Endpoint节上更改一下,因为国内的Azure的接 ...
- css基础--简单介绍css
--引入 什么是css? CSS 指层叠样式表 (Cascading Style Sheets) 样式定义如何显示 HTML 元素 样式通常存储在样式表中 把样式添加到 HTML 4.0 中,是为了解 ...
- go语言从零学起(二)--list循环删除元素(转载)
本篇系转载 在使用go的container/list的package时,你可能会无意间踩一个小坑,那就是list的循环删除元素. list删除元素,直观写下来的代码如下: package main i ...
- HTTP返回代码 403 404 500等代表的含义
在网站日志中,我们经常会看到很多返回的http代码,如201.304.404.500等等.可是这些具体的返回的HTTP代码究竟什么含义呢,在此做一下知识普及吧,记不住不要紧,到时候看看就行了,但最主要 ...
- 如何在Mongodb中实现数据超时自动删除功能?
在工作过程中,我们难免会遇到这样的问题,我们想保存一些数据,但是我们对这些数据的要求并不高,有时候往往只是想要某个时间范围内的数据,比如我们如果永远只关心从当前时间往前推半年内的数据特性,那么我们就不 ...
- git 第一次关联远程仓库
1.首先需要先git pull origin master 2.然后合并两个无关的仓库 git pull origin master --allow-unrelated-histories
- python学习笔记2-字符串操作
一.字符串切片 #切片也能适合字符串 tittle='今 天 发 苹 果' for i t in enumerate(tittle): #enumerate可以同时循环下标和值 print('%s:% ...