2017-10-19 4 views
1

페이지의 첫 번째 값으로 구성되는 내 모델에서 메서드를 만들려면 어떻게해야합니까?Laravel 관계에서 첫 번째 행을 얻는 방법

제 첫 페이지 인스턴스를 얻으 려구요.

가 여기 내 모델입니다 : -`) (첫번째>

<?php 

namespace App; 

use Illuminate\Database\Eloquent\Model; 

class Book extends Model 
{ 
    protected $guarded = []; 

    public function pages() 
    { 
     return $this->hasMany('\App\Page'); 
    } 

    public function cover() 
    { 
     //first page of pages here 
    } 

} 
+1

의 첫 번째() 메소드를 사용하여'> 페이지 $ this-()를 호출? – kerbholz

+0

오류를 반환하면 App \ Book :: cover가 관계 인스턴스를 반환해야합니다. –

답변

5

는 관계

public function cover() 
{ 
    return $this->pages()->first(); 
} 
+0

나는 그것을 시도하지만이 오류를 반환 App \ Book :: cover 관계 인스턴스를 반환해야합니다. –

+1

예를 들면 다음과 같습니다 : App \ Book :: first() -> cover() –

+1

사용해야합니다(), optearwise laravel은 관계를 찾으려고합니다 –