wikigods / jraty
用于项目评分的包,可选的微数据格式。
1.0.1
2021-12-11 02:30 UTC
This package is auto-updated.
Last update: 2024-09-11 08:05:58 UTC
README
使用jQuery Raty插件对项目评分的包,可选的微数据格式。
该包为您做所有事情 - 从显示评分到接收评分并将其存储到数据库。
此包是escapeboy/jraty的重编、重组和维护版本,后者不再维护。
安装
使用composer安装此包
composer require wikigods/jraty
服务提供程序将自动发现。您无需在任何地方添加提供程序。
配置 若要使用自己的设置,请发布配置。
php artisan vendor:publish --provider="Wikigods\Jraty\JratyServiceProvider"
配置文件 config/jraty.php
应如下所示
return [
'route' => 'save/item_rating'
];
准备使用
首先需要加载jQuery
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
然后需要加载Raty插件。您可以使用它如下
echo Jraty::js()
或
<script src="vendor/wikigods/jraty/js/jquery.raty.min.js"></script>
然后我们需要初始化Raty插件。
使用库
echo Jraty::js_init($params=[]);
Jraty::js_init接受包含Raty选项的数组。更多信息可以在Raty网站上找到
例如这个,它是默认的
Jraty::js_init([ 'score' => 'function() { return $(this).attr(\'data-score\'); }', 'number' => 5, 'click' => 'function(score, evt) { $.post(\'save/item_rating\',{ item_id: $(\'[data-item]\').attr(\'data-item\'), score: score }); }', 'path' => '\'vendor/wikigods/jraty/img\'' ]);
返回
$(document).ready(function () { $('#item-rating').raty({ 'score': function () { return $(this).attr('data-score'); }, 'number': 5, 'click': function (score, evt) { $.post('save/item_rating', { item_id: $('[data-item]').attr('data-item'), score: score }); }, 'path': 'vendor/wikigods/jraty/img' }); });
重要:如果您注意到在php调用中单引号被转义了。
用法
echo Jraty::html($item_id, $item_name='', $item_photo='', $seo=true);
如果您使用seo选项(默认为true),则建议设置item_name
库只接受来自单个IP地址的每个项目的单个评分。
附加信息
删除记录
Jraty::delete($id)
添加手动评分
$data = [ 'item_id' => Request::get('item_id'), 'score' => Request::get('score'), 'added_on' => DB::raw('NOW()'), 'ip_address' => Request::getClientIp() ]; Jraty::add($data);
获取项目评分数据
$rating = Jraty::get($item_id); echo $rating->avg; // avarage score echo $rating->votes; // total votes