如果这个问题太具体了,我事先表示歉意,但是我很难选择这两种模型之间正确的雄辩关系。我有两种模型,一种叫做“包裹”(例如旅行包裹),另一种叫做“国家”。一个包裹只能有一个国家,一个国家可以有多个包裹。这是我的关系:
class Package extends Model
{
public function country()
{
return $this->belongsTo('App\Country');
}
}
// Country
class Country extends Model
{
public function packages()
{
return $this->hasMany('App\Country');
}
}
这是正确的关系吗?当我使用以下关系时,我想使用以下代码获取包含国家/地区信息的软件包的集合:
$packages = Package::with('country')->get();
我收到NULL
的回复。我做错什么了吗?谢谢您的协助。
PS:这是我的数据库结构:
Country:
`id`
`iso_code`
`name`
`phone_code`
Package:
`id`
`title`
`description`
`date_from`
`date_to`
`price`
`country_id`
答案 0 :(得分:4)
尝试:
// Package
class Package extends Model
{
public function country()
{
return $this->belongsTo('App\Country');
}
}
// Country
class Country extends Model
{
public function packages()
{
return $this->hasMany('App\Package', 'country_id', 'id');
}
}