I have a model, which is storing foreign key data of various tables. Here is the model details:
class InstituteStage extends Model
{
protected $guarded = [];
public function branch()
{
return $this->belongsTo('App\Model\Branch');
}
public function version()
{
return $this->belongsTo('App\Model\Version');
}
public function shift()
{
return $this->belongsTo('App\Model\Shift');
}
public function stage()
{
return $this->belongsTo('App\Model\Stage');
}
public function academic_year()
{
return $this->belongsTo('App\Model\AcademicYear');
}
}
Right now if i fetch the data, i'm getting those fields:
Array
(
[0] => Array
(
[id] => 3
[stage_for] => Teachers
[branch_id] => 1
[version_id] => 1
[shift_id] => 1
[stage_id] => 1
[academic_year_id] => 1
)
[1] => Array
(
[id] => 4
[stage_for] => Students
[branch_id] => 2
[version_id] => 2
[shift_id] => 2
[stage_id] => 2
[academic_year_id] => 2
)
)
Now i want the details (such as name) of other tables. The response i'm looking for is:
Array
(
[0] => Array
(
[id] => 3
[stage_for] => Teachers
[institute_stage_name] => "branch_name->version_name->shift_name->stage_name"
)
[1] => Array
(
[id] => 4
[stage_for] => Students
[institute_stage_name] => "branch_name->version_name->shift_name->stage_name"
)
)
I can get datas using eager loading and concat them in frontend. But i want to use a custom model which will return this details. Is it possible to get this structure!
via Chebli Mohamed
Aucun commentaire:
Enregistrer un commentaire