2016-10-21 4 views
0

Как и в названии, можно ли добиться чего-то подобного?Laravel Eloquent получить последнюю сводную запись в методе модели

class Sign extends Eloquent 
{ 
    public function lastStatus() 
    { 
     return $this->belongsToMany(Status::class) 
        ->withPivot('timestamp') 
        ->orderBy('timestamp', 'desc') 
        ->take(1); 
    } 
} 

Существует много-ко-многим между sign и status, у меня есть поворотный стол sign_status. Каждое задание в sign_status имеет свой timestamp, поэтому я могу получить информацию о последнем статусе, но как достичь этого в методе модели?

Это нужно делать это таким образом, потому что тогда я буду строить запрос типа:

Gantry::whereHas('sign.lastStatus', function($q){...}); 

И я буду фильтровать по статусу, который является ошибкой получить козловые, по меньшей мере один знак имеет ошибку - но мне нужно найти эту ошибку в последних статусах каждого знака.

Спасибо!

ответ

0

Я думаю, что это должно быть $this->hasMany(Status::class)

+0

'hasMany' используется для один-ко-многим, у меня есть много-ко-многим – pavon147

+0

жаль моего disunderstanding, я подумал, что это должно быть 'взаимно многие отношения в этом случае –

Смежные вопросы