ResourceCollection
class ResourceCollection extends JsonResource implements Countable, IteratorAggregate (View source)
Traits
Properties
mixed | $resource | The resource instance. |
from JsonResource |
array | $with | The additional data that should be added to the top-level resource array. |
from JsonResource |
array | $additional | The additional meta data that should be added to the resource response. |
from JsonResource |
static string | $wrap | The "data" wrapper that should be applied. |
from JsonResource |
string | $collects | The resource that this resource collects. |
|
Collection | $collection | The mapped collection instance. |
|
protected bool | $preserveAllQueryParameters | Indicates if all existing request query parameters should be added to pagination links. |
|
protected array|null | $queryParameters | The query parameters that should be added to the pagination links. |
Methods
Filter the given data, removing any optional values.
Merge the given data in at the given index.
Remove the missing values from the filtered data.
Retrieve a value based on a given condition.
Merge a value into the array.
Merge a value based on a given condition.
Merge the given attributes.
Retrieve an accessor when it has been appended.
Retrieve a relationship if it has been loaded.
Execute a callback if the given pivot table has been loaded.
Execute a callback if the given pivot table with a custom accessor has been loaded.
Transform the given value if it is present.
Forward a method call to the given object.
Throw a bad method call exception for the given method.
Retrieve the model for a bound value.
Retrieve the model for a bound value.
Set the value for a given offset.
Determine if an attribute exists on the resource.
Dynamically get properties from the underlying resource.
Dynamically pass method calls to the underlying resource.
Create a new resource instance.
Create new anonymous resource collection.
Set the string that should wrap the outer-most resource array.
Map the given collection resource into its individual resources.
Indicate that all current query parameters should be appended to pagination links.
Specify the query string parameters that should be present on pagination links.
Return the count of items in the resource collection.
Details
protected array
filter(array $data)
Filter the given data, removing any optional values.
protected array
mergeData(array $data, int $index, array $merge, bool $numericKeys)
Merge the given data in at the given index.
protected array
removeMissingValues(array $data)
Remove the missing values from the filtered data.
protected MissingValue|mixed
when(bool $condition, mixed $value, mixed $default = null)
Retrieve a value based on a given condition.
protected MergeValue|mixed
merge(mixed $value)
Merge a value into the array.
protected MergeValue|mixed
mergeWhen(bool $condition, mixed $value)
Merge a value based on a given condition.
protected MergeValue
attributes(array $attributes)
Merge the given attributes.
protected MissingValue|mixed
whenAppended(string $attribute, mixed $value = null, mixed $default = null)
Retrieve an accessor when it has been appended.
protected MissingValue|mixed
whenLoaded(string $relationship, mixed $value = null, mixed $default = null)
Retrieve a relationship if it has been loaded.
protected MissingValue|mixed
whenPivotLoaded(string $table, mixed $value, mixed $default = null)
Execute a callback if the given pivot table has been loaded.
protected MissingValue|mixed
whenPivotLoadedAs(string $accessor, string $table, mixed $value, mixed $default = null)
Execute a callback if the given pivot table with a custom accessor has been loaded.
protected mixed
transform(mixed $value, callable $callback, mixed $default = null)
Transform the given value if it is present.
protected mixed
forwardCallTo(mixed $object, string $method, array $parameters)
Forward a method call to the given object.
static protected void
throwBadMethodCallException(string $method)
Throw a bad method call exception for the given method.
mixed
getRouteKey()
Get the value of the resource's route key.
string
getRouteKeyName()
Get the route key for the resource.
void
resolveRouteBinding(mixed $value, string|null $field = null)
Retrieve the model for a bound value.
void
resolveChildRouteBinding(string $childType, mixed $value, string|null $field = null)
Retrieve the model for a bound value.
bool
offsetExists(mixed $offset)
Determine if the given attribute exists.
mixed
offsetGet(mixed $offset)
Get the value for a given offset.
void
offsetSet(mixed $offset, mixed $value)
Set the value for a given offset.
void
offsetUnset(mixed $offset)
Unset the value for a given offset.
bool
__isset(string $key)
Determine if an attribute exists on the resource.
void
__unset(string $key)
Unset an attribute on the resource.
mixed
__get(string $key)
Dynamically get properties from the underlying resource.
mixed
__call(string $method, array $parameters)
Dynamically pass method calls to the underlying resource.
void
__construct(mixed $resource)
Create a new resource instance.
static JsonResource
make(mixed ...$parameters)
Create a new resource instance.
static AnonymousResourceCollection
collection(mixed $resource)
Create new anonymous resource collection.
array
resolve(Request|null $request = null)
Resolve the resource to an array.
array
toArray(Request $request)
Transform the resource into a JSON array.
string
toJson(int $options = 0)
Convert the model instance to JSON.
array
with(Request $request)
Get any additional data that should be returned with the resource array.
$this
additional(array $data)
Add additional meta data to the resource response.
void
withResponse(Request $request, JsonResponse $response)
Customize the response for a request.
static void
wrap(string $value)
Set the string that should wrap the outer-most resource array.
static void
withoutWrapping()
Disable wrapping of the outer-most resource array.
JsonResponse
response(Request|null $request = null)
Transform the resource into an HTTP response.
Response
toResponse(Request $request)
Create an HTTP response that represents the object.
array
jsonSerialize()
Prepare the resource for JSON serialization.
protected mixed
collectResource(mixed $resource)
Map the given collection resource into its individual resources.
protected string|null
collects()
Get the resource that this resource collects.
ArrayIterator
getIterator()
Get an iterator for the resource collection.
$this
preserveQuery()
Indicate that all current query parameters should be appended to pagination links.
$this
withQuery(array $query)
Specify the query string parameters that should be present on pagination links.
int
count()
Return the count of items in the resource collection.
protected JsonResponse
preparePaginatedResponse(Request $request)
Create a paginate-aware HTTP response.