点赞操作
HDCMS / 更新于3周前

点赞操作

点赞使用多态机制,也以任何模块都可以点赞,下面是给用户点赞的操作。

[TOC]

数据表必须存在 favour_num 字段用于记录点赞数jgj。

模型定义

下面是给 Article 模块的 Content 模型点赞操作。

  1. 引入 App\Traits\Site traits 类。
    
    use App\Traits\Site;

class User extends Authenticatable
{
use Site;
...
}

## 路由使用
比如我们要给Article模块中的Content文章模型,编号为2的文章点赞,每一个参数是文章模型类,每二个参数为要给点赞的2号文章,路由定义如下:

route('member.favour.make',['Modules-Article-Content',2])

路由参数说明:
|  参数   | 说明    |
| --- | --- |
|  参数一   |  模型类名,以 - 分隔   |
|  参数二   |  模型编号   |

## 点赞统计
引入 `favour`  trait 后使用 ` favour_count` 动态属性获取点赞数

auth()->user()->favourCount();


## 前台使用
系统提供了方便的组件,通过一行代码就可以实现点赞效果。

@include('components.favorite',['model'=>$topic,'avatar'=>true])


也可以请求链接完成点赞操作。


赞 【 {{auth()->user()->favour_count}} 】

如果是ajax请求返回JSON数据如下:

{"message":"点赞成功","action":"add","total":99}

{"message":"取消成功","action":"del","total":98}


## 模型方法
模型需要继承了`App\Traits\Favour`  traits 类后实现的以下方法。

//判断当前用户是否点赞
public $topic->isFavour()

//点赞统计
public function favourCount()

//点赞后执行的方法
public function favourUpdate()

我们的使命:传播互联网前沿技术,帮助更多的人实现梦想
Copyright © 2010-2018 houdunren.com All Rights Reserved 京ICP备12048441号-3
: 010-86467608 : 2300071698@qq.com
编码: 向军大叔