成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

一個用于收藏文章的擴(kuò)展包 Laravel Collect

Youngs / 702人閱讀

摘要:是我開發(fā)的一個收藏文章的擴(kuò)展,借鑒于,我也有幸參加了社區(qū)對該擴(kuò)展的外文翻譯文章為你的模型添加喜歡和討厭功能。但是對于想學(xué)習(xí)開發(fā)擴(kuò)展包的同學(xué)還是不錯的。最近發(fā)現(xiàn)已經(jīng)有人使用我的擴(kuò)展包到項(xiàng)目里,我更有動力不斷更新完善。

Laravel Collect 是我開發(fā)的一個收藏文章的擴(kuò)展,借鑒于 cybercog/laravel-love ,我也有幸參加了社區(qū)對該擴(kuò)展的外文翻譯文章 為你的 Eloquent 模型添加喜歡和討厭功能。我的初衷是學(xué)習(xí)怎么開發(fā) Laravel 擴(kuò)展包,所以實(shí)現(xiàn)的功能可能比較簡單,請大神勿噴。但是對于想學(xué)習(xí)開發(fā) Laravel 擴(kuò)展包的同學(xué)還是不錯的。望大家點(diǎn)贊支持,感謝。

最近發(fā)現(xiàn)已經(jīng)有人使用我的擴(kuò)展包到項(xiàng)目里,我更有動力不斷更新完善。fight!

安裝

通過 composer 安裝,命令如下:

$ composer require vetor/laravel-collect

我們需要執(zhí)行模型遷移命令,將 Collections 表發(fā)布到我們的數(shù)據(jù)庫:

$ php artisan migrate
使用

在我們的收藏者表,即 User 表里需要實(shí)現(xiàn) CollectorContract 接口,并引用 Collector trait:

use IlluminateFoundationAuthUser as Authenticatable;
use VetorLaravelCollectCollectorModelsTraitsCollector;
use VetorContractsCollectCollectorModelsCollector as CollectorContract;

class User extends Authenticatable implements CollectorContract
{
    use Collector;
}

如果用戶需要收藏文章,在 Article 表里實(shí)現(xiàn) CollectableContract 接口并引用 Collectable trait 即可:

use VetorLaravelCollectCollectableModelsTraitsCollectable;
use VetorContractsCollectCollectableModelsCollectable as CollectableContract;

class Article extends Model implements CollectableContract
{
    use Collectable;
}
可用的方法

對于用戶來說,可用的方法有:

// 收藏
$user->collect($article);

// 取消收藏
$user->cancelCollect($article);

// 用戶的所有收藏記錄
$user->collections;

// 用戶收藏的文章記錄
$user->collectionsWhereCollectable(Article::class);

文章可用的方法有:

// 收藏
$article->collect();

// 取消收藏(默認(rèn)為當(dāng)前用戶,可以把用戶實(shí)例作為參數(shù)傳入)
$article->cancelCollect();

//  獲取文章的收藏情況
$article->collections();

// 獲取文章收藏?cái)?shù)
$article->collections_count;

// 根據(jù)收藏?cái)?shù)排序(升序 "asc";降序 "desc";默認(rèn)為升序)
Article::orderByCollectionsCount()->get();

我們可以通過下面的方法來獲取收藏表里所有文章:

Collection::whereCollectable(Article::class)->get();
更多

代碼參見 Github 倉庫 vetor/laravel-collect,歡迎大家提出自己的想法,指出不足,我們一起學(xué)習(xí)進(jìn)步。再次感謝 cybercog/laravel-love 。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/31652.html

相關(guān)文章

  • 無頭瀏覽器測試可視化:Laravel Dusk 控制臺入門指南

    摘要:通過添加此功能,該程序包將啟用記錄請求和響應(yīng)信息所需的功能。是一條普通控制器路由,用于輸出控制臺的視圖。收集瀏覽器行為這是整個擴(kuò)展包最乏味的部分。 Laravel Dusk 控制臺是一款 Laravel 擴(kuò)展包,能夠?yàn)槟愕?Dusk 測試套件提供漂亮的可視面板。通過它,你可以可視化運(yùn)行 Dusk 測試時涉及的各個步驟,以及查看每個步驟的 DOM 快照。這對于調(diào)試瀏覽器測試、并搞清楚后臺...

    levius 評論0 收藏0
  • 十五個常用 Laravel 集合(Collection)

    摘要:將返回通過回調(diào)真值測試的第一個項(xiàng)的鍵。方法將集合分割為多個給定大小的較小集合。它可用于在任何位置的調(diào)試和查找集合內(nèi)的內(nèi)容。方法用于遍歷整個集合。這對集合同樣有效。它將導(dǎo)致由第二個參數(shù)的值作為鍵的集合。它接受回調(diào)并傳遞并將集合傳遞給它。 showImg(https://segmentfault.com/img/remote/1460000018924972); 文章轉(zhuǎn)自:https://...

    alphahans 評論0 收藏0
  • Debugging collections(譯)

    摘要:注本文是翻譯寫的關(guān)于調(diào)試技巧,讀完以后很實(shí)用,分享給大家閱讀過程中,翻譯有錯誤的希望大家指正原文鏈接最近我一直在使用的,如果你還不了解,我簡單說下一個集合就是一個功能強(qiáng)大的數(shù)組有很多強(qiáng)大處理其內(nèi)部數(shù)據(jù)的函數(shù)但是唯一讓我頭疼的地方是如何調(diào)試的 注:本文是翻譯Freek Van der Herten寫的關(guān)于Collection調(diào)試技巧,,讀完以后很實(shí)用,分享給大家.閱讀過程中,翻譯有錯誤的...

    lunaticf 評論0 收藏0
  • 教程:Laravel 集合(Collection)基礎(chǔ)用法

    摘要:方法可以傳一個單一值,或一組鍵值對或者一個回調(diào)函數(shù),然后它會返回一個布爾值來告知目標(biāo)內(nèi)容是否在集合中。排序方法接受一個鍵或回調(diào)函數(shù)參數(shù)用于對集合進(jìn)行排序。獲取一個集合中所有數(shù)字的和方法通過回調(diào)函數(shù)傳遞每個數(shù)據(jù)項(xiàng)。 showImg(https://segmentfault.com/img/remote/1460000018726031?w=1252&h=640); 文章轉(zhuǎn)自:https:...

    CoderStudy 評論0 收藏0
  • 【日常手記】之Laravel5.3

    摘要:個人網(wǎng)站最近剛寫了一個手機(jī)在線播放的電影站使用日常手記更新使用的的查詢作用域的本地作用域去自定義可復(fù)用的約束集合,方便鏈?zhǔn)秸{(diào)用什么是本地查詢作用域本地作用域允許我們定義通用的約束集合以便在應(yīng)用中復(fù)用。 關(guān)于作者 程序開發(fā)人員,不拘泥于語言與技術(shù),目前主要從事PHP和前端開發(fā),使用Laravel和VueJs,App端使用Apicloud混合式開發(fā)。合適和夠用是最完美的追求。 個人網(wǎng)站:...

    kidsamong 評論0 收藏0

發(fā)表評論

0條評論

Youngs

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<