Laravel many to many 之 Tags系統

Tags 系統、好友系統等等

凡是需要多一張中間表出來做關聯記錄的,都能參考

//簡易架構解釋
model Posts::
model Tags::

Table 1 : posts
id
title

Table 2 : tags
id
name

Table 3 : tags_rel
id  -  AUTO_INCREMENT 
tags_id
posts_id
//Model/Posts.php
    public function tags() {
        return $this->belongsToMany(Tags::class, 'tags_rel', 'posts_id', 'tags_id');
    }
//Model/tags.php
    public function posts() {
        return $this->belongsToMany(Posts::class);
    }

要解釋很複雜,有興趣的自慢慢理解一下,其他跟官方的講的差不多 我就是參考官方這篇做出來的: ORM many-to-many

整篇重點只是想提一句:即使你有中間表來做關聯,看many-to-many就夠了,不用被他的「Has Many Through」卡住


這只是其中一個很簡單的例子 不是每個many to many 都適合,我本人就試過在多次不同的情況下回來參考這篇文章時,發現不能照抄,有時候是ok,有時候是不ok,需要進行調整的