gpt4 book ai didi

mysql - Laravel hasManyThrough 关系给出空集合

转载 作者:行者123 更新时间:2023-11-29 21:54:35 25 4
gpt4 key购买 nike

我正在尝试获取属于custom_view 的所有过滤器。例如:$user->custom_views->first->filters

下面的代码给了我一个空集合。我已经尝试了所有方法,但无法理解为什么我得到一个空集合。也许有人可以看到我在这里做错了什么?

user      custom_views   custom_view_filters   filters
---- ------------ ------------------- -------
id id id id
user_id custom_view_id
filter_id

用户模型:

public function custom_views(){
return $this->hasMany('App\CustomView');
}

自定义 View 模型:

public function user(){
return $this->belongsTo('App\User');
}

public function filters(){
return $this->hasManyThrough('App\Filter', 'App\CustomViewFilter', 'custom_view_id', 'id');
}

CustomViewFilter 模型:

no relations defined

过滤器模型

public function custom_views(){
return $this->belongsToMany('App\CustomView', 'custom_view_filter', 'custom_view_id', 'filter_id');
}

最佳答案

CustomView 中的 filters 方法更改为:

public function filters(){
return $this->belongsToMany('App\Filter', 'custom_view_filter','filter_id','custom_view_id');
}

关于mysql - Laravel hasManyThrough 关系给出空集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33287144/

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