gpt4 book ai didi

Laravel hasManyThrough() 在标签和帖子之间

转载 作者:行者123 更新时间:2023-12-02 07:32:00 24 4
gpt4 key购买 nike

我想获取帖子的标签。

这是我的数据透视表

post
body

tag
name

post_tag
post_id
tag_id

据我所知并能够理解hasManyThrough() 是为此而设计的。但是我在 Post 模型中调用了 tags()

return $this->hasManyThrough('Post', 'Tag', 'post_id', 'tag_id');

不起作用。

最佳答案

没有。你展示的是 ManyToMany 关系: http://laravel.com/docs/eloquent#relationships

你要做的是这样的(在 Post 模型中):

return $this->belongsToMany('Tag', 'post_tag', 'post_id', 'tag_id');

hasManyThrough 关系是一种快捷方式。给定这个模型:

user
name

post
user_id
body

tag
name

post_tag
post_id
tag_id

当你想查看一个用户的所有标签时它会派上用场(假设一个用户是许多帖子的所有者)所以你会做这样的事情(在用户模型中):

return $this->hasManyThrough('Post', 'Tag', 'post_id', 'tag_id');

希望对你有帮助!

关于Laravel hasManyThrough() 在标签和帖子之间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20847822/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com