laravel的模块化开发

4 篇文章 0 订阅

对于刚接触laravel的人来说,知道了控制器、路由、视图等一些基础知识后,就开始动手敲代码了。然而过了没多久你就会发现,你的app下的controller目录,route文件和视图都是很多都是堆在一起。这时候就体现出模块化开发的好处了。模块化开发可以把各个功能逻辑分类,各自都有自己的控制器、路由、视图文件夹,而且模块之间互不影响,删除其中一个模块不会对其他模块产生影响。像下图一样,将后台admin作为一个模块,放在modules下,如果再有其他模块,还可以继续建另一个文件夹存放,这样目录结构就变得非常整洁。什么?那里面那么多文件不是都要手动创建么,那不累死了?当然不是啦,在高科技的今天,这种工作怎么可能自己手动建呢,我是个懒人。。。往下拉。。

我用的是第三方的包。。laravel的第三方组件那么多,不用?你似不似sha。。接下来就跟着我来安装吧

安装组件

composer require houdunwang/laravel-module

php artisan vendor:publish --provider="Nwidart\Modules\LaravelModulesServiceProvider"

php artisan vendor:publish --provider="Spatie\Permission\PermissionServiceProvider" --tag="migrations"

php artisan vendor:publish --provider="Spatie\Permission\PermissionServiceProvider" --tag="config"

php artisan vendor:publish --provider="Houdunwang\Module\LaravelServiceProvider"

php artisan migrate

ps:安装完后要去更新一下artisan命令。。。

配置 composer.json 设置自动加载目录

{
  "autoload": {
    "psr-4": {
      "App\\": "app/",
      "Modules\\": "Modules/"
    }
  }
}

创建模块

下面的命令是安装 Admin 模块。。

php artisan hd:module Admin

 这样就能一行命令生成模块啦。里面应有尽有。。连路由都帮你生成了!这个第三方包还有很多神奇的地方,有兴趣的自己去研究一下。。可以自动化构建,还有角色和权限的管理。

https://packagist.org/packages/houdunwang/laravel-module

Laravel是一个流行的PHP Web开发框架,提供了一套简洁、优雅的语法和丰富的功能库,便于开发者构建高效、可维护的应用程序。对于后台开发来说,Laravel提供了一系列重要的特性和工具,使得开发过程更加快捷和高效。 首先,Laravel的MVC架构使得后台开发更加模块化和分层,便于代码的维护和扩展。通过Laravel的路由系统,开发者可以轻松地定义后台接口和路由,实现前后端分离,提高开发效率并降低系统的耦合度。 其次,Laravel提供了强大的数据库访问工具,包括Eloquent ORM和查询构建器,能够方便地操作数据库。开发者可以使用简洁的语法进行数据查询、插入、更新和删除操作,减少了繁琐的SQL语句编写,提高了开发效率。 此外,Laravel还提供了丰富的安全功能和中间件,保障后台系统的安全性。通过CSRF令牌和表单请求验证,可以防止恶意请求和跨站点脚本攻击。同时,Laravel提供了身份认证和授权的功能,方便实现用户角色管理和权限控制,保护后台系统中的敏感数据。 另外,Laravel还具备良好的社区支持和活跃的开发社区,有大量的扩展包和开源项目可供使用,可以快速集成常用的功能和模块,进一步提高后台开发的效率。 总之,Laravel 9作为后台开发的框架,提供了强大的功能和工具,帮助开发者快速构建高效、安全、可扩展的后台系统。无论是初学者还是有经验的开发者都可以通过学习和使用Laravel,快速上手并提高开发效率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值