请问远程一对多,可以获取子层下面的所有模型嘛?
请教一下各位大神
A 一对多 B
B 一对多 C
如何通过 A,既能取到 B,也能在 B 中取到 C?
class Questionnaire extends Model
{
public function titles()
{
return $this->hasMany(QuestionnaireTitle::class);
}
}
class QuestionnaireTitle extends Model
{
public function questions(): HasMany
{
return $this->hasMany(QuestionnaireQuestion::class);
}
}
class QuestionnaireQuestion extends Model
{
public function title()
{
return $this->belongsTo(QuestionnaireTitle::class);
}
}
使用方式和结果
$questions = Questionnaire::where('id', $questionnaire_id)
->with('titles.questions')
->get()
$questions => Illuminate\Database\Eloquent\Collection {#3652
all: [
App\Models\Questionnaire {#3651
id: 3,
titles: Illuminate\Database\Eloquent\Collection {#3653
all: [
App\Models\QuestionnaireTitle {#3658
questionnaire_id: 3
questions: Illuminate\Database\Eloquent\Collection {#3655
//无法获取到此处的值
all: [],
},
},
],
},
},
],
}
我这没问题哎