fschirinzi / laramote
Laravel远程
Requires
- php: ^7.4|^8.0
- illuminate/support: ^8.0|^9.0
Requires (Dev)
- orchestra/testbench: ^6.0|^7.0
- phpunit/phpunit: ^9.2
README
LaraMote 允许您从远程运行 Laravel 的任务。如果您使用 Cypress 测试前端(SPA)应用,并且该应用以 Laravel 作为后端,那么这个包将非常有帮助。
目前实现了以下功能
✅ 艺术家命令
✅ 带参数的命令
✅ 获取输出
✅ 登录用户
✅ 自定义键值
✅ 自定义键/表列
✅ 自定义模型
✅ 记住
✅ 工厂
✅ 创建/制作
✅ 模型
✅ 名称
✅ 状态
✅ 数量
✅ 显示隐藏属性
✅ 覆盖属性
✅ 模型
✅ 使用自定义键值搜索
✅ 使用自定义键/表列搜索
✅ 使用自定义模型搜索
✅ 限制获取
✅ 加载关系
✅ 显示模型和关系的隐藏属性
待办事项
- 使命令正常工作
- 编写测试
- 添加包含所有端点和其参数的维基页面
- 支持所有基于类的工厂功能
安装
您可以通过 composer 安装此包
composer require fschirinzi/laramote --dev
安装 LaraMote 后,您可以使用 laramote:install
艺术家命令发布其资产
php artisan laramote:install
用法
LaraMote 在 /laramote
URI 上公开端点。默认情况下,您只能在 local
和 testing
环境中访问此仪表板。但是,在您的 app/Providers/LaraMoteServiceProvider.php
文件中,有一个 gate 方法控制对非本地环境中 LaraMote 端点的访问。您可以自由修改此 gate,以根据需要限制对您的 LaraMote 端点的访问
/** * Register the LaraMote gate. * * This gate determines who can access LaraMote in non-local environments. * * @return void */ protected function gate() { Gate::define('useLaraMote', function ($user = null) { return in_array(optional($user)->email, [ // ]); }); }
示例
您可以将 Insomnia_example_requests.json
导入 Insomnia Rest-client 以查看一些实际操作的示例。
升级
当升级到 Laramote 的新版本时,您应重新发布 LaraMote 的资产
php artisan laramote:publish
为了保持资产更新并避免未来更新的问题,您可以在应用程序的 composer.json 文件中添加 laramote:publish 命令到 post-update-cmd 脚本
自定义中间件
如果需要,您可以更新您的 config/laramote.php
文件来自定义 LaraMote 路由使用的中间件堆栈。如果您尚未发布 LaraMote 的配置文件,您可以使用 vendor:publish 艺术家命令来这样做
php artisan vendor:publish --tag=laramote-config
配置文件发布后,您可以通过调整此文件中的中间件配置选项来编辑 LaraMote 的中间件
/* |-------------------------------------------------------------------------- | LaraMote Route Middleware |-------------------------------------------------------------------------- | | These middleware will be assigned to every Vapor UI route - giving you | the chance to add your own middleware to this list or change any of | the existing middleware. Or, you can simply stick with this list. | */ 'middleware' => [ 'api', EnsureUserIsAuthorized::class, ],
测试
composer test
变更日志
请参阅 CHANGELOG 了解最近更改的详细信息。
贡献
请参阅CONTRIBUTING获取详细信息。
安全
如果您发现任何与安全相关的问题,请通过电子邮件fschirinzi25@gmail.com联系,而不是使用问题跟踪器。
鸣谢
我使用了Laravel/VaporUi包及其文档作为模板,以加快此包的开发。
许可证
MIT许可证(MIT)。请参阅许可证文件获取更多信息。
Laravel 包模板
此包是使用Laravel 包模板生成的。