[扩展推荐] Laravel-acquaintances —— 好友关系管理

Laravel

multicaret/laravel-acquaintances 软件包使模型(Eloquent Models)能够管理好友关系,团队,关注,喜欢(点赞),评级和收藏。

这是自述文件(README)中的一个基本示例:

$user1 = User::find(1);
$user2 = User::find(2);

$user1->befriend($user2);
$user2->acceptFriendRequest($user1);

// The messy breakup :(
$user2->unfriend($user1);

开箱即用,您可以期待以下功能(功能可能会随着时间变化):

  • 发送好友请求
  • 接受好友要求
  • 拒绝好友请求
  • 黑名单
  • 群组
  • 为用户或模型评分,对多方面都支持
  • 关注用户或模型
  • 为用户或模型点赞
  • 订阅用户或模型
  • 收藏用户或模型
  • 投票(对用户或模型进行向上或向下投票)

包里有几个定义好的特性可以直接使用于模型中。下面是在User模型中定义的一些特性演示:

use Multicaret\Acquaintances\Traits\CanBeFollowed;
use Multicaret\Acquaintances\Traits\CanFollow;
use Multicaret\Acquaintances\Traits\CanLike;
use Multicaret\Acquaintances\Traits\Friendable;
//...

class User extends Model
{
    use Friendable;
    use CanLike;
    use CanFollow, CanBeFollowed;
    use CanRate, CanBeRated;
    //...
}

该项目的自述文件(readme)包含每种模型交互的所有详细使用信息,还包含了许多其他的有用功能。您可以在GitHub上multicaret / laravel-acquaintances了解有关此项目的更多信息。

本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://laravel-news.com/manage-friendsh...

译文地址:https://learnku.com/laravel/t/45473

本文为协同翻译文章,如您发现瑕疵请点击「改进」按钮提交优化建议
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!