swayok/peskyorm-laravel

服务提供者和其他类,用于用 PeskyORM 替换 Laravel 的 Eloquent ORM

dev-master 2022-08-31 14:44 UTC

This package is auto-updated.

Last update: 2024-09-16 10:42:49 UTC


README

这是一个包含用于用 PeskyORM 替换 Laravel 的 Eloquent ORM 的类的包

安装

添加服务提供者

\PeskyORMLaravel\Providers\PeskyOrmServiceProvider::class 添加到 config/app.php 中的 providers 数组

这将也会注册

  • \PeskyORMLaravel\Providers\PeskyValidationServiceProvider - 几个情景验证器;

  • \PeskyORMLaravel\Providers\PeskyOrmUserProvider - Auth 将使用 PeskyORM 和其 Record 对象来管理授权。要使用哪个 Record 类,请配置在 config/auth.php 中的 providers 数组

      'providers' => [
          'frontend' => [
              'driver' => 'peskyorm',
              'model' => \App\Db\User\User::class,
          ]
      ]
    
  • \PeskyORMLaravel\Console\Commands\OrmMakeDbClassesCommand 命令 (php artisan orm:make-db-classes) - 通过表名生成 DB 类

  • 如果您启用了 DebugBar 包 - 它将被配置为显示由 PeskyOrm 适配器执行的查询(只有当此功能在 DebugBar 中启用时)

使用 artisan 发布配置

php artisan vendor:publish --tag=config --force

这将添加 config/peskyorm.php 文件

注意事项

  1. config/app.php 中的 providers 数组中删除 Illuminate\Validation\ValidationServiceProvider::class - \PeskyORMLaravel\Providers\PeskyValidationServiceProvider::class 取代它
  2. 如果您不打算与 PeskyORM 一起使用,您也可以从 config/app.php 中的 helpers 数组中删除 'Eloquent' => Illuminate\Database\Eloquent\Model::class
  3. 您也可以从 providers 中删除 Illuminate\Pagination\PaginationServiceProvider::classIlluminate\Auth\Passwords\PasswordResetServiceProvider::class(别忘了删除 'Password' => Illuminate\Support\Facades\Password::class 助手),因为 PeskyORM 目前不支持这些。
  4. 不要删除 Laravel 的 DatabaseServiceProvider - Laravel 的某些部分使用它来进行服务操作,如迁移、数据库播种等。
  5. 不要删除 DB 助手 - 它可能很有用,而且不会损害您应用程序的性能或稳定性

待办事项

  1. 更新测试并覆盖更多功能
  2. 考虑一个助手门面