aurawindsurfing / messenger
一个超级简单的用于Laravel应用程序中的1对1消息系统。
Requires
- php: ^7.1
- illuminate/support: 5.7.*
Requires (Dev)
- orchestra/testbench: 3.7.*
- phpunit/phpunit: ^7.0
This package is auto-updated.
Last update: 2024-09-17 04:39:26 UTC
README
此包允许您在Laravel应用程序中创建简单的用户到用户消息系统。它包含所有视图,甚至还有一个简单的管理员面板。目前不支持群组对话以及不支持编辑消息。它只是一个发送和接收消息的系统。
功能
易于设置和配置。
- 用户之间的1对1消息
- 每个用户多个对话(线程)
- 返回与用户关联的所有消息
- 返回用户的未读消息数
- 良好的文档和IDE友好。
- 经过充分测试,代码质量高。
- 支持Laravel
5.7
到5.8
。 - 用❤️和☕制作。
Laravel版本
安装
您可以通过composer安装此包
composer require aurawindsurfing/messenger
或者在composer.json中手动放置
"require": { "aurawindsurfing/messenger": "~1.0" }
运行
composer update
除了标准配置和迁移文件外,此包还包括控制器、视图、工厂和命令行工具。
要发布所有资产,请运行
php artisan vendor:publish --provider="Aurawindsurfing\Messenger\MessengerServiceProvider"
如果您还没有,创建一个users
表。如果您需要,默认的Laravel迁移将令人满意。
迁移您的数据库
php artisan migrate
编辑配置
config/messenger.php
此包允许您在用户之间创建模拟消息,以便您可以更容易地构建视图。要查看模拟消息,您必须以某个用户登录,否则您将收到404错误。要选择为哪些用户创建消息,请编辑您的配置文件
'firstUserId' => 1, 'secondUserId' => 2,
将特性添加到您的用户模型中
use Aurawindsurfing\Messenger\Messagable; class User extends Authenticatable { use Messagable;
使用方法
使用模拟数据填充您的消息表,以便您可以看到一些消息显示。为此,请运行
php artisan messenger:generate
以配置文件中指定的用户之一登录,并访问
https://yourapp.test/messages/1
查看第一用户收到的消息线程
要清除所有模拟数据,请在您的控制台中运行以下命令。请注意,此命令将删除消息表中包括真实消息在内的所有数据(如果存在!)
php artisan messenger:deleteAllData
自定义
控制器
(可选) 此包使用自己的MessagesController,您可以选择覆盖它。为此,您需要将其从
/vendor/aurawindsurfing/messenger/src/Http/Controllers
复制到
/App/Http/Controllers
编辑您的配置文件和复制的控制器,以修改控制器命名空间
'controller_namespace' => 'App\Http\Controllers',
此控制器使用3个方法,index
、create
、store
,您可以根据需要将它们重命名为您自己的应用程序中的任何名称。
编辑您的配置文件并修改方法名称
// customise controller method names if you choose to overwrite default controller 'controller_index' => 'index', 'controller_create' => 'create', 'controller_store' => 'store',
视图
php artisan vendor:publish --tag=views --provider="Aurawindsurfing\Messenger\MessengerServiceProvider"
它们将放置在
resources/views/vendor/messenger
迁移
php artisan vendor:publish --tag=migrations --provider="Aurawindsurfing\Messenger\MessengerServiceProvider"
命令和工厂
包工厂和命令将可用于您的Laravel应用程序,并自动加载。您可以将它们复制到相关位置,并在需要时覆盖它们。
测试
composer test
更新日志
有关最近更改的更多信息,请参阅更新日志。
贡献
有关详细信息,请参阅贡献。
安全
如果您发现任何安全相关的问题,请通过电子邮件tom@gazeta.ie报告,而不是使用问题跟踪器。
致谢
许可
麻省理工学院许可证(MIT)。有关更多信息,请参阅许可文件。