zaghadon/laravel-social
最新稳定版本:v1.0.1
Composer 安装命令:
composer require zaghadon/laravel-social
包简介
A full and simple Toolkit Package for instantly adding Social Features to Laravel Project [Adapted From Miladimos]
关键字:
README 文档
README
A full and simple Toolkit Package for instantly adding Social Features to Laravel Project Adapted From Miladimos
Installation
-
Run the command below to add this package:
composer require zaghadon/laravel-social
-
Open your config/socials.php and add the following to the providers array:
Zaghadon\Social\Providers\SocialServiceProvider::class,
-
Run the command below to install package:
php artisan social:install
-
Run the command below to migrate database:
php artisan migrate
Uses
Depending on the Capabilities You want implemented, as the required traits to the right Models.
Likeable Trait
namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; use Zaghadon\Social\Traits\Like\Likeable; class Post extends Model { use HasFactory, Likeable; }
In the User Model:
namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Foundation\Auth\User as Authenticatable; use Zaghadon\Social\Traits\Like\CanLike; class User extends Authenticatable { use HasFactory, CanLike; }
Commentable Trait
namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; use Zaghadon\Social\Traits\Comment\Commentable; class Post extends Model { use HasFactory, Commentable; }
In the User Model:
namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Foundation\Auth\User as Authenticatable; use Zaghadon\Social\Traits\Comment\Commentor; class User extends Authenticatable { use HasFactory, Commentor; }
Bookmarkable Trait
namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; use Zaghadon\Social\Traits\Bookmark\Bookmarkable; class Post extends Model { use HasFactory, Bookmarkable; }
In the User Model:
namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Foundation\Auth\User as Authenticatable; use Zaghadon\Social\Traits\Bookmark\CanBookmark; class User extends Authenticatable { use HasFactory, CanBookmark; }
Followable Trait
In the User Model:
namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Foundation\Auth\User as Authenticatable; use Zaghadon\Social\Traits\Follow\Followable; class User extends Authenticatable { use HasFactory, Followable; }
Methods
In controllers you have these methods:
namespace App\Http\Controllers; use App\Models\Post; class PostController extends Controller { public function index() { $post = Post::find(1); $post->likes // return all likes } }
TODO
- Document Every Available Methods and their Usage.
- Create a test framework to test each unit feature.
Capabilities [* Proposed, ** In Active Developement]
Like
Favorite *
Tag **
Category **
Bookmark
Follow \ Unfollow
Subscribe **
Comment
Vote / Rate System *
统计信息
- 总下载量: 76
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 2
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2022-08-27