|
7 | 7 | use Illuminate\Http\Request; |
8 | 8 | use Test\app\Http\Resources\CommentResource; |
9 | 9 | use Test\app\Http\Resources\PostResource; |
10 | | -use Test\app\Http\Resources\UserResource; |
11 | 10 | use Test\app\Models\Comment; |
12 | 11 | use Test\app\Models\Post; |
13 | 12 | use Test\app\Models\User; |
@@ -102,10 +101,10 @@ private function dataSeed() |
102 | 101 |
|
103 | 102 | private function getJsonResult(User $user, ?array $attributes = null, ?array $relationships = null) |
104 | 103 | { |
105 | | - $request = new Request([ |
106 | | - ...($attributes !== null ? ['fields' => ['user' => implode(',', $attributes)]] : []), |
107 | | - ...($relationships !== null ? ['include' => implode(',', $relationships)] : []), |
108 | | - ]); |
| 104 | + $request = new Request(array_merge( |
| 105 | + ($attributes !== null ? ['fields' => ['user' => implode(',', $attributes)]] : []), |
| 106 | + ($relationships !== null ? ['include' => implode(',', $relationships)] : []), |
| 107 | + )); |
109 | 108 |
|
110 | 109 | return array_filter([ |
111 | 110 | 'data' => [ |
@@ -142,14 +141,18 @@ private function getJsonResult(User $user, ?array $attributes = null, ?array $re |
142 | 141 | 'updated_at' => $user->updated_at->format(DateTimeInterface::ATOM), |
143 | 142 | ], |
144 | 143 | ], |
145 | | - 'included' => array_filter([ |
146 | | - ...(in_array('posts', $relationships ?? []) |
147 | | - ? $user->posts->mapInto(PostResource::class)->map->toArray($request) |
148 | | - : []), |
149 | | - ...(in_array('comments', $relationships ?? []) |
150 | | - ? $user->comments->mapInto(CommentResource::class)->map->toArray($request) |
151 | | - : []), |
152 | | - ]) |
| 144 | + 'included' => collect() |
| 145 | + ->merge( |
| 146 | + in_array('posts', $relationships ?? []) |
| 147 | + ? $user->posts->mapInto(PostResource::class)->map->toArray($request) |
| 148 | + : [] |
| 149 | + ) |
| 150 | + ->merge( |
| 151 | + in_array('comments', $relationships ?? []) |
| 152 | + ? $user->comments->mapInto(CommentResource::class)->map->toArray($request) |
| 153 | + : [] |
| 154 | + ) |
| 155 | + ->toArray() |
153 | 156 | ]); |
154 | 157 | } |
155 | 158 | } |
0 commit comments