为 Laravel 5 的 Redbean ORM 桥接器

v0.1.5 2017-11-28 17:15 UTC

This package is auto-updated.

Last update: 2024-08-29 03:29:40 UTC


README

为 Laravel 5 的 Redbean ORM 桥接器

安装

需要此包

composer require laravel-redbean/orm

添加包后,将 ServiceProvider 添加到 config/app.php 中的 providers 数组中

LaravelRedbean\ORM\RedbeanServiceProvider::class,

要发布配置,请使用

php artisan vendor:publish

用法

默认情况下,Redbean 将使用 config/database.php 中的默认连接。

现在您可以像平常一样使用 Redbean。请阅读Redbean 文档

多个连接

您可以通过在 config/redbean.php 中设置 multiple_connections => true, 来使用多个数据库连接,这将尝试添加 config/database.phpconnections 的每个连接。

通过传递 connections 中的连接名称到 RedBeanPHP\R::selectDatabase('connection_name');,您将得到所需的连接。例如,如果您想连接到 mysql

'connections' => [

        'sqlite' => [
            'driver'   => 'sqlite',
            'database' => database_path('database.sqlite'),
            'prefix'   => '',
        ],

        'mysql' => [
            'driver'    => 'mysql',
            'host'      => env('DB_HOST', 'localhost'),
            'database'  => env('DB_DATABASE', 'forge'),
            'username'  => env('DB_USERNAME', 'forge'),
            'password'  => env('DB_PASSWORD', ''),
            'charset'   => 'utf8',
            'collation' => 'utf8_unicode_ci',
            'prefix'    => '',
            'strict'    => false,
        ],

    ],

选择 mysql 连接

RedBeanPHP\R::selectDatabase('mysql');

身份验证

该包提供了一个默认的用户模型 (LaravelRedbean\ORM\User::class),您可以使用它或基于它创建自己的模型。

实现 Authenticatable

您的用户模型必须扩展 RedBeanPHP\SimpleModel 并实现 Illuminate\Contracts\Auth\Authenticatable 协议。

您还可以在您的模型中使用提供的 trait LaravelRedbean\ORM\Auth\Authenticatable 并在必要时进行覆盖。

配置 Laravel

编辑 Laravel 的 Auth 配置 (/config/auth.php) 以使用 Redbean。

将用户提供者设置为以下内容

'users' => [
    'driver' => 'redbean',
    'model' => LaravelRedbean\ORM\User::class,
],

密码重置

您的用户模型必须实现 Illuminate\Contracts\Auth\CanResetPassword 协议。

您还可以在您的模型中使用提供的 trait LaravelRedbean\ORM\Auth\Passwords\CanResetPassword 并在必要时进行覆盖。