Laravel 5 hasManyThrough 重复行内容
Laravel 5 hasManyThrough repeating row content
我有以下数据库表:
tour
idtour
other_columns
day
idday
other_columns
tour_has_day
idtour
idday
每个团有很多天,这些天可以用于其他团
所以,在 Tour.php 模型中,我添加了这个函数:
function days () {
return $this->hasManyThrough('App\Day', 'App\Tour_has_day', 'idtour', 'idday');
}
它给了我正确的相关天数,但所有行的内容都相同
我调试它 returns:
的查询
select
`day`.*,
`tour_has_day`.`idtour`
from `day`
inner join
`tour_has_day` on `tour_has_day`.`idtour` = `day`.`idday`
where
`tour_has_day`.`idtour` = '1'
它returns
您需要一个 many-to-many 关系与一个枢轴 table 就像您为此所拥有的那样。 has-many-through 关系适用于当你有一个 parent 和一个 child 时,child 是另一个 child 的 parent。
我有以下数据库表:
tour
idtour
other_columns
day
idday
other_columns
tour_has_day
idtour
idday
每个团有很多天,这些天可以用于其他团
所以,在 Tour.php 模型中,我添加了这个函数:
function days () {
return $this->hasManyThrough('App\Day', 'App\Tour_has_day', 'idtour', 'idday');
}
它给了我正确的相关天数,但所有行的内容都相同
我调试它 returns:
的查询select
`day`.*,
`tour_has_day`.`idtour`
from `day`
inner join
`tour_has_day` on `tour_has_day`.`idtour` = `day`.`idday`
where
`tour_has_day`.`idtour` = '1'
它returns
您需要一个 many-to-many 关系与一个枢轴 table 就像您为此所拥有的那样。 has-many-through 关系适用于当你有一个 parent 和一个 child 时,child 是另一个 child 的 parent。