sasin91/laravel-conversations

为 Laravel 5 应用启用用户会话!

dev-master 2018-01-17 09:47 UTC

This package is auto-updated.

Last update: 2024-09-12 03:36:03 UTC


README

内容

安装

对于 Laravel ~5

composer require sasin91/laravel-conversations

与任何包一样,刷新 composer 自动加载器是个好主意。

composer dump-autoload

配置

要发布 conversable.php 配置文件,运行以下命令,vendor:publish

php artisan vendor:publish --provider="\Sasin91\LaravelConversations\ConversableServiceProvider"

您可以配置配置文件以符合您的喜好,但默认设置应该适用于大多数情况。

覆盖模型

您可以在发布的配置文件中永久覆盖默认模型。也可以在运行时设置配置值以临时覆盖。

    config()->set('conversable.models.user', User::class);

此外,还有一些配置对象可用,以模型为例

    \Sasin91\LaravelConversations\Config\Models::swap('user', User::class);

交换邀请码

您可以在服务提供者中重新绑定邀请码的具体实现。

    $this->app->singleton(\Sasin91\LaravelConversations\InvitationCode::class, Concrete::class);

为了方便起见,合同定义了一个 __invoke 方法,这意味着可以使用 Closure 进行实现。

策略过滤器

您可以在服务提供者中注册此包策略回调的全局范围

\Sasin91\LaravelConversations\Config\Policies::before(function ($user, $ability) {
    // return boolean
});

\Sasin91\LaravelConversations\Config\Policies::after(function ($user, $ability) {
    // return boolean
});

然后您就可以使用了。

使用

此包提供了 Conversations 实现的 Eloquent 部分和一些策略。

事件

常见的 eloquent 事件仍然可用。

此外,当接受或拒绝邀请时,还会触发以下事件。

		'accepted' => 'Sasin91\LaravelConversations\Events\InvitationAccepted',
		'declined' => 'Sasin91\LaravelConversations\Events\InvitationDeclined'

问题

如果您发现任何漏洞,请通过电子邮件发送给我,jonas.kerwin.hansen@gmail.com。

对于问题,请在 Github 上创建一个问题。

我目前知道与 proxy-driver-commands 和测试相关的问题。

许可证

laravel-conversations 是免费软件,根据 MIT 许可证的条款进行分发。