laravel ownsTo 给出 null
laravel 中的 belongsTo 关系返回 null
belongsTo relation in laravel is returning null
public function games(){
return $this->belongsTo('AppModelsGame');
}
但是当我提供密钥作为参数时,它似乎工作正常
but when i provide key as argument it seems to work fine
public function games(){
return $this->belongsTo('AppModelsGame','game_id');
}
但根据 docs game_id
本身就是一个默认参数.我在这里缺少什么小东西.
but as per the docs game_id
is itself is a default argument. What is the small thing i am missing here.
谢谢
推荐答案
关系的 belongsTo
端根据关系方法的名称构建外键名称.这种行为不同于关系的 hasOne
/hasMany
端,后者使用类的名称.
The belongsTo
side of the relationship builds the foreign key name based on the name of the relationship method. This behavior is different than the hasOne
/hasMany
side of the relationship, which uses the name of the class.
在本例中,您的关系方法名为 games
,因此它将查找外键字段 games_id
.您可以提供外键字段作为第二个参数,如您所示,或者您可以将您的关系方法重命名为 game()
.
In this case, your relationship method is named games
, so it will look for the foreign key field games_id
. You can either provide the foreign key field as the second parameter, as you have shown, or you can rename your relationship method to game()
.
相关文章