2016-05-25 4 views
0

私がテストしていたデータがfeed変数はLaravelで非オブジェクトのプロパティを取得しようとすると

{ 
    "id": 32, 
    "user_id": 1, 
    "target_id": 3, 
    "feedable_id": 7, 
    "feedable_type": "review", 
    "created_at": "2016-05-23 14:18:22", 
    "updated_at": "2016-05-23 14:18:22", 
    "feedable": { 
     "id": 7, 
     "user_id": 1, 
     "slug_id": 3, 
     "review": "y this product is so quite?", 
     "stars": 9, 
     "created_at": "2016-05-23 14:18:22", 
     "updated_at": "2016-05-23 14:18:22", 
     "slug": { 
      "id": 3, 
      "value": "Quite", 
      "views": 5, 
      "user_id": 1, 
      "category_id": 1, 
      "created_at": "2016-05-23 14:18:03", 
      "updated_at": "2016-05-24 12:47:29" 
     } 
    } 
} 

に、このようなものですが、私は値にアクセスすることはできないのです。かなりに私の見解

{{ $feed->feedable->slug->value }} 

Laravelは、あなたが最初にそれをデコードする必要があるので、これはJSON変数です

Trying to get property of non-object (View: ... 
+0

モデルに適切な関係が設定されていますか? – user2094178

+0

はい関係は良好であり、プレーンリターンで良好に機能します – Eirtaza

答えて

1

スロー値にアクセスします。 json_decodeを使用すると、変数をデコードして希望の値を取得できます。

Check online

$json = '{ 
    "id": 32, 
    "user_id": 1, 
    "target_id": 3, 
    "feedable_id": 7, 
    "feedable_type": "review", 
    "created_at": "2016-05-23 14:18:22", 
    "updated_at": "2016-05-23 14:18:22", 
    "feedable": { 
     "id": 7, 
     "user_id": 1, 
     "slug_id": 3, 
     "review": "y this product is so quite?", 
     "stars": 9, 
     "created_at": "2016-05-23 14:18:22", 
     "updated_at": "2016-05-23 14:18:22", 
     "slug": { 
      "id": 3, 
      "value": "Quite", 
      "views": 5, 
      "user_id": 1, 
      "category_id": 1, 
      "created_at": "2016-05-23 14:18:03", 
      "updated_at": "2016-05-24 12:47:29" 
     } 
    } 
}'; 
$feed = json_decode ($json); 

echo $feed->feedable->slug->value; //Quite 
関連する問題