2016-10-27 28 views
1

比方說,我們有2種型號,具有以下關係:laravel 4.2侃侃而談:讓所有()+列相關

用戶:

public function BookCode() { 
    return $this->hasOne('BookCode'); 
} 

的bookcode:

public function User() { 
    return $this->belongsTo('User'); 
} 

現在,我們d喜歡從BookCode的Book_code中獲取用戶的所有記錄(如果沒有則爲空)作爲數組。有這樣的可能嗎?我想出的唯一的事,這似乎是很慢的(需要30秒來執行),爲:

$users = User::all(); 

foreach($users as $user) { 
    $users_array[] = array(
     $user->first_name, 
     $user->last_name, 

     // this is very slow 
     $user->BookCode['book_code'], 
     $user->created_at, 
     $user->updated_at, 
    ); 
} 

是否有可能得到與「一氣呵成」的相關book_codes用戶的陣列?目前找不到任何解決方案。

回答

2

設置應該急切加載的關係。

$users = User::with('BookCode')->get();