larawe/larawe

larawe 框架。

安装次数: 20

依赖项: 0

建议者: 0

安全: 0

星标: 0

关注者: 2

分支: 1

开放问题: 0

类型:项目

v0.0.2 2019-09-18 08:54 UTC

This package is auto-updated.

Last update: 2024-09-04 12:27:42 UTC


README

Larawe是一个微擎模块开发框架,基于Laravel进行精简开发。采用双入口设计,尽量兼容微擎...作者实在太懒,文笔太差,实在编不出来。至于为什么开发这个框架,那说来话长。

使用方法

在微擎的 addons 目录下执行以下命令

composer create-project --prefer-dist larawe/larawe my_module

然后你可以发现,addons 目录下生成了一个名为 my_module 的模块

cd addons/my_module

进来以后你可以发现,跟laravel项目的目录很像嘛(如果你用过laravel的话),没错,就是抄laravel的,我觉得目录这样设计没问题,使用方法也跟laravel有99.99%相似,省的我再写文档了,emmm...

接下来讲重点,有几个地方需要手动设置(为什么不做成自动设置?因为作者懒啊,要赶项目啊)

  • .env:填写 MODULE_NAME 与模块名一致,使用蛇形命名法
  • site.php 中的类名修改:将 {Module_name} 占位符改成模块名,首字母大写,这是第一个应用入口,也就是从微擎进入的入口
  • site.phpgetMenus 里面 'm' => 'module_name''module_name' 改成你的模块名
  • module.php 文件同样修改这两处
  • 配置 manifest.xml 文件,这是微擎模块的安装信息,具体配置方法请百度或Google
  • 看你要不要把 icon.jpg 替换掉...佛系...

接下来就可以到微擎管理后台愉快地安装模块了

从微擎进入的路由参数用在URL里增加参数 r 来表示,默认为空

例:http://yourhost/web/index.php?c=site&a=entry&m=module_name&do=index&r=index 将匹配到下面这条路由

$router->get('/index', function () {
    return view('welcome');
});

等等,不是说有双入口吗?在哪里?

别急,继续往下看

双入口

Larawe 的一个入口是模块下的 site.php,这是微擎体系内的入口,另一个入口就是 public 目录下的 index.php,这个入口的执行路径是不经过微擎路由的,但有加载微擎的框架,所以微擎的数据库函数,缓存函数等等,大部分的功能还是可以使用的。可以用Nginx绑定一个域名到 public 文件夹,就跟部署laravel一样,开发api接口的时候可以使用这个入口,省的URL后面接着又臭又长的微擎参数。

注意事项

由于精简了laravel框架,有一些特性是使用不了的,如下:

  • 使用 site.php 入口的话,路由的Restful风格参数绑定无法使用,例如: /posts/{id} 将无法使用
  • 移除了Facade
  • 移除了Queue
  • 移除了Eloquent
  • 未完...

基本上只保留laravel的基本骨架,容器、路由、中间件、模板、请求、响应还有一些常用的函数,就这些...