vikio88 / slime-api
基于 Slim v3 的一款简单 RestFul API 框架
Requires
- akrabat/rka-ip-address-middleware: ^0.4.0
- palanik/corsslim: dev-slim3
- vikkio88/slime-framework: dev-master
Requires (Dev)
- fzaninotto/faker: ~1.4
- phpunit/phpunit: ~4.0
This package is not auto-updated.
Last update: 2024-09-28 20:25:17 UTC
README
Laravel 的重量堪比一只怀孕的超级肥胖河马,里面充满了你永远不会用到的功能,但你又喜欢优雅的模型?
那好吧,就用 slime-api 吧。
基本上是一个快速创建 RestFul API 的模板。
成分
水,Eloquent(来自 Laravel),Slim(v3),一些其他垃圾
小心,可能含有坚果
如何使用
首先克隆项目
git clone git@github.com:vikkio88/slime.git
或使用 composer 安装
composer create-project vikkio88/slime-api WHATEVER
安装依赖项(如果你使用了上面的 create-project
命令,则不需要)
composer install
将配置文件从 .env.example
移动并编辑到 .env
运行迁移和种子
php novice migrate && php novice seeder
运行测试
phpunit
新手
novice
是一个从另一个 项目 中获取的 php cli 脚本。在这个小型项目中,我扩展了它,使其更容易为每个人生成类,甚至可以生成自己的命令。
如何使用
Novice 将运行一个脚本,如果它扩展了正确的接口,并且脚本位于正确的位置。配置文件 config/console
包含 novice 将在其中搜索脚本的位置
return [ 'commandPaths' => [ 'App\Lib\Slime\Console\Commands\\', 'App\Console\\' ] ];
如果你需要更多,只需添加更多(不要忘记将它们添加到 composer json 自动加载配置中)
使用方法
要运行 novice
命令,你需要在项目根目录下,并输入以下命令:
$ php novice <command_name>
捆绑的命令
默认情况下,Slime 提供以下 novice 命令
create_config <name>
create_migration <name>
create_model <name> (namespaces availabile)
create_action <name> (namespaces availabile)
create_seeder <name>
create_route <name>
migrate
seed
build
代码可以在 App\Lib\Slime\Console\Commands
中找到
以及
coverage [percentage]
echo [parameter1] [parameter2] ...
代码可以在 App\Console
中找到
构建命令
运行命令 php novice build
将在 dist/
文件夹中生成一个更轻量级的 API 项目版本(更容易通过 ftp 部署)。
php novice build
将生成可部署版本,如果你想以详细输出执行它,只需添加 -v
php novice build clean
将清理 dist/
文件夹。
有一个配置文件可以让你自定义构建 config/build.php
。你可以在该文件中添加要构建脚本复制的文件夹和文件,以及如果你想排除更多文件在供应商清洁过程中。
命名空间生成命令
php novice create_model users\\player
将在正确的文件夹中生成一个模型,创建命名空间结构(psr4 标准)并在文件开头添加命名空间字符串。上面的命令将生成 Models/Users/Player.php
文件,并将类放在命名空间 App\Models\Users
中。
php novice create_action users\\player_get_one
将在正确的文件夹中生成一个操作,创建命名空间结构(psr4 标准)并在文件开头添加命名空间字符串。上面的命令将生成 Actions/Users/PlayerGetOne.php
文件,并将类放在命名空间 App\Actions\Users
中。
所有生成命令将 snake_case 转换为大写驼峰式,因此如果你输入
php novice create_model users\\player_match
上面的命令将生成 Models/Users/PlayerMatch.php
文件,并将类放在命名空间 App\Models\Users
中。