所有的关系使用方法with(关系 funciton.name)
一对一
hasOne(当前表关系字段,远端表模型,远端表字段)
关系 当前表关系字段 = 远端表模型.远端表字段
function tag()
{
return $this->hasOne('tag_id',Tag::class,'id');
}
一对多
hasOne(当前表关系字段,远端表模型,远端表字段)
关系 当前表关系字段 = 远端表模型.远端表字段
function tag()
{
return $this->hasMany('tag_id',Tag::class,'id');
}
多态一对一
function comment()
{
$this->morphOne([
1 => Picture::calss, //当type=1时标示图片id
2 => Article::class, //当type=2 时 是文章id
],[
1 => 'pic_id', //当type=1时 type_id = pic_id
2 => 'article_id'//当type=2 时 type_id = article_id
],'type','type_id');
}
多态一对多
function comment()
{
$this->morphMany([
1 => Picture::calss, //当type=1时标示图片id
2 => Article::class, //当type=2 时 是文章id
],[
1 => 'pic_id', //当type=1时 type_id = pic_id
2 => 'article_id'//当type=2 时 type_id = article_id
],'type','type_id');
}