2015-08-15 171 views
1

我試圖通過Laravel中的模型關係獲取數據庫數據。 我已經建立了一個模型,像這樣:返回null的Laravel關係

<?php 

use Illuminate\Auth\UserInterface; 
use Illuminate\Auth\Reminders\RemindableInterface; 

class Userskeywords extends Eloquent { 

    public function relatedKeywords() 
    { 
     return $this->hasOne('Keywords', 'id', 'keywordId'); 
    } 

} 
?> 

與其他模型只是一個普通的模型。在數據庫中,他們是這樣的:

關鍵詞

enter image description here

UsersKeywords

enter image description here

然而,當我運行UsersKeywords::with('relatedKeywords')->get()返回NULLrelated_keywords。執行以下代碼時會發生這種情況。我究竟做錯了什麼?

$keywords = Userskeywords::where('user', '=', $id)->get(); 
$keywords->load('relatedKeywords'); 
return Response::json($keywords); 

回答

0

你的關係稱爲relatedKeywords,所以你需要訪問相關對象與

$object->relatedKeywords 

代替

$object->related_keywords 
+0

這將引發SQL錯誤。我不認爲這是正確的。 – user4992124

+0

什麼SQL錯誤? –

+0

無法在表格中找到該列'keywordId'。它看着錯誤的桌子,所以原來沒問題。 – user4992124