Home > Enterprise >  Show Laravel resources API for only specific routes
Show Laravel resources API for only specific routes

Time:06-17

Is it possible to show new added Laravel resources API fields on specific routes?

Example: I have a UserResource which has 3 fields - id, name and email. I'm returning UserResource in 10 routes. For 11th route added new field - posts.

Is it possible to show new posts field only for 11th route?

CodePudding user response:

Of course you can, so you need to add two things. First inside of your controller in the method where you want to load posts do the following

return UserResourse::collection($users->with('posts'));

Then inside of your UserResourse class add the following

'posts' => PostResourse::collection($this->whenLoaded('posts'))
 // or like this if you dont have a PostResouse
'posts' => $this->posts
  • Related