繁体   English   中英

Laravel属于ToMany Relationship问题

[英]Laravel belongsToMany Relationship issue

我还有另一个问题。 我有一个国家模型:

protected $fillable = [
    'code', 'latitude', 'longitude', 'currency_id', 'timezone', 'dam_date', 'status',
];

public function neighbors() {

    return $this->belongsToMany('App\Models\Country', 'country_country_relation', 'country_id_1', 'country_id_2');

}

我想向某个国家展示邻居。 不幸的是,neighbors()仅在一个方向上工作。

示例:如果我将奥地利添加为德国的邻国,当我看到德国页面时,我会看到奥地利,但是当我看到奥地利页面时,我找不到德国为邻居。 为了使这件事成为可能,我应该改变什么?

您要问的是表自参考的多对多关系。 在您的情况下,问题在于您要将数据透视表中的一个ID从另一个保存到另一个。 因此,只能以这种方式进行检索。 仅通过一种关系,您就遇到了一种按键顺序的问题,以便能够以两种方式获取它们。

看看这个(您最终有2种方法来双向触发关系): Laravel多对多自引用表仅以一种方式起作用

更好的解决方案在这里: https : //github.com/laravel/framework/issues/441

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM