2016-08-16 6 views
1

モデルを持つ製品があります。私はすべての製品とそのモデルスラグからいくつかのフィールドを取得する必要があります。これは私のコードです:関係からEloquentフィールドを取得する

私はmodel.slugを取ることができますどのように
{ 
    "id": 39, 
    "name": "ASD1", 
    "front_image": "adasdsa.jpg", 
    "back_image": "2evewa.jpg", 
    "slug": "asd1", 
    "model": null 
} 

:ような何かを返す

$query = Product::with('model'); 

$query->orderBy('order', 'asc')->orderBy('name', 'asc')->skip($skip)->take($take); 

return $query->get(['id', 'name', 'front_image', 'back_image', 'slug']), 

その?

+0

あなたが達成したいものを明確にもらえますか? Ajaxリクエストを介してJSONを取得していますか?もしそうなら、このデータを取得するjavascriptを追加できますか?あなたはPHPでスラッグをしたいですか? – rofavadeka

+0

私はこのエンドポイントを郵便番号でテストし、貼り付けられたjsonはレスポンスです – Alan

+0

私のすべての製品とそのモデルのスラッグが必要です。 Product :: with( 'model') - > get();それは動作し、私は製品とそのモデルからすべてのフィールドを与えますが、私はすべてのデータを表示したいので、私はid、name、front_image、back_imageとslugをモデルから取り出し、モデルからのスラッグを必要としません@rofavadeka – Alan

答えて

0

getメソッドは、雄弁にデータベースへのクエリを実行するよう指示するために使用されます。 特定のフィールドのみを選択するには、取得する前にselectメソッドを使用します。例えば

Product::with('model')->select('name', 'model.slug as model_slug')->get(); 
関連する問題