ghanem/friendship

Laravel 5 的 friendship 系统使用说明

1.0 2015-10-23 17:31 UTC

This package is auto-updated.

Last update: 2024-09-16 22:29:25 UTC


README

此包允许您将完整的报告系统添加到您的 Laravel 应用程序中。

安装

首先,使用 Composer 引入此包。

composer require ghanem/friendship

然后,在 app/config/app.php 文件中包含服务提供者。

'providers' => [
    Ghanem\Friendship\FriendshipServiceProvider::class
];

最后,您需要发布

php artisan vendor:publish --provider="Ghanem\Friendship\FriendshipServiceProvider" 

并运行迁移。

php artisan migrate

设置模型

<?php

namespace App;

use Ghanem\Friendship\Contracts\Friendable;
use Ghanem\Friendship\Traits\Friendable as FriendableTrait;
use Illuminate\Database\Eloquent\Model;

class User extends Model implements Friendable
{
    use FriendableTrait;
}

示例

向模型发送好友请求

$user->befriend($userToBeFriendsWith);

取消关注模型

$user->unfriend($userToBeFriendsWith);

拒绝来自模型的请求

$user->denyFriendRequest($userToBeFriendsWith);

接受来自模型的请求

$user->acceptFriendRequest($userToBeFriendsWith);

阻止模型

$user->blockFriendRequest($userToBeFriendsWith);

解除阻止模型

$user->unblockFriendRequest($userToBeFriendsWith);

检查模型是否已阻止其他模型

$user->hasBlocked($userToBeFriendsWith);

检查一个模型是否被另一个模型阻止

$user->isBlockedBy($userToBeFriendsWith);

检查两个模型之间是否存在好友关系

$user->isFriendsWith($userToBeFriendsWith);

获取单个好友关系

$user->getFriendship($userToBeFriendsWith);

获取所有好友关系的列表

$user->getAllFriendships();

获取待处理好友关系的列表

$user->getPendingFriendships();

获取已接受好友关系的列表

$user->getAcceptedFriendships();

获取已拒绝好友关系的列表

$user->getDeniedFriendships();

获取已阻止好友关系的列表

$user->getBlockedFriendships();

获取待处理好友请求的列表

$user->getFriendRequests();