Как передать параметр в Laravel Relationship Function внутри лезвия? - PullRequest
0 голосов
/ 24 февраля 2019

Student.php

Есть много сборов

class student extends Model{
    public function fees($round){
        return $this->hasMany(fee::class)->where('payment_round','=',$round);
    }
}

Fee.blade.php

@foreach($student->fees("parameter") as $fee)
    {{$fee->myproperty}}
@endforeach

Как я могу передать параметр в $ student-> гонорары («параметр»)?

Ответы [ 2 ]

0 голосов
/ 24 февраля 2019

Вы можете сохранить отношения как можно более простыми и добавить второй метод, который использует их для получения нужных вам данных:

<?php

class student extends Model{

    public function fees(){
        return $this->hasMany(fee::class);
    }

    public function getFeeByRound($round)
    {
        return $this->fees()->where('payment_round','=',$round)->get();
    }

}

И затем вы можете использовать это как:

@foreach($student->getFeeByRound($parameter) as $fee)
   {{ $fee->myproperty }}
@endforeach
0 голосов
/ 24 февраля 2019

Попробуйте что-то вроде этого:

@foreach($student->fees($parameter)->get() as $fee)
   {{ $fee->myproperty }}
@endforeach

Я думаю, вы перепутали коллекцию связанных моделей fees с конструктором запроса fees().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...