我正在与laravel 5.4合作。我已经创建了国家和州表。
国家表如下
我的状态表是:
在这里,我编写了连接查询,如下所示。它工作得很好。
$state = DB::table($this->tbl_states)
->join($this->tbl_countries, $this->tbl_countries.'.id', '=', $this->tbl_states.'.country_id')
->select($this->tbl_states.'.*', $this->tbl_countries.'.name as country_name')
->whereNull($this->tbl_states.'.deleted_at')
->paginate(10)
但是,我不想写这个查询,而是想使用雄辩的ORM,那么我应该写什么查询呢?
在乡村模型中,我创建了如下所示的函数:
public function states()
{
return $this->hasMany('state');
}
在状态模型中,我有写函数,如下所示:
public function country()
{
return $this->hasOne('country');
}
在国家
模型中尝试以下:
public function states()
{
return $this->hasMany(App\State::class);
}
在状态下
模型:
public function country()
{
return $this->belongsTo(App\Country::class);
}
然后$国家-
官方文档:雄辩:关系