EntityCaster: Enhanced Data Casting into Entities for spiral/filters component #87
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The
Spiral\Cycle\Filter\EntityCaster
extends the capabilities of spiral/filters, allowing developers to easily convert incoming data into entity objects. This is particularly useful when dealing with various data sources such as HTTP requests, gRPC requests, console commands, and more.To get started and learn more about input casting in Spiral, check out our comprehensive documentation: Spiral Filters input casting.
Example
Consider a scenario where you need to transform POST data into an entity object. This is particularly useful when dealing with forms or API endpoints. Here's how you can achieve it:
And the corresponding controller
In this example, when a POST request is made to
/role
with data like[role: 1
], theEntityCaster
will automatically fetch the role object withID 1
from the database and convert it into aRole
object.Registering the caster
To use the caster, you need to register it in your application's bootloader. Here's how you can do it:
fixes #75