2017-02-07 65 views
-1

我有one-to-onePostCategory之間的關係。讓我試着說明專欄。 Post columnsLaravel使用關係檢索數據

| id | pr_name | pr_description | ..... | `category_id` 

這裏是Category columns

| id | name 

那麼我要做的是以下幾點。類別已由我定義,並且只有類別名稱。我應該使用它的id來檢索我的Blade.php文件中的類別名稱:$post->category->name。但我收到錯誤:Trying to get property of non-object。這裏是我的模型:郵政的型號

class Post extends Model 
{ 
    public function category() 
    { 
     return $this->hasOne('App\Like','id','category_id'); // 'id' is foreign key, 
                  // 'category_id' is local key 
    } 
} 

分類型號:

class Category extends Model 
{ 
    public function post() 
    { 
     return $this->belongTo('App\Post'); 
    } 
} 
+0

我想你混淆了家長和孩子。這是一對多的關係,因爲一個類別可以有多個帖子。表格設計反映了這一點:您在分類表中有類別ID作爲外鍵。 – Shadow

+0

我試過這種關係。但是,我怎麼才能得到使用職位的類別的名稱。我的意思是:'category - > $ post-> name' –

+0

爲什麼'category'的模型叫做'Like'? –

回答

0

改變Likecategory。和關係,其中類別hasOne('App\Post')模型belongsTo('App\Category')