A wizard form for the Laravel Nova
This package gives you the ability to creating
or updating
a resource step by step and validating
and storing
resources on each step.
To get started with nova-wizard
run the below command:
composer require zareismail/nova-wizard
To use, your resource class should implement the Wizard
interface. Then for creating each step use the Step
class like the following:
use Zareismail\NovaWizard\Contracts\Wizard;
use Zareismail\NovaWizard\Step;
class Supply extends Resource implements Wizard
{
return [
(new Step(__('Step One'), [
// some fields
])->withToolbar()
new Step('Step Two', [
]),
new Step(__('Step Three'), function() {
return [
];
}),
];
}
Now; your source automatically displays wizard form to you.
By default; each step, except the last, will store in the session. if you need to store data into the database after a specific step you should call the Checkpoint
method on that step. now, checkpoint step and all steps after it will be store in the DB
.
For ignoring wizard-form
on the update page, your resource should implement the Zareismail\NovaWizard\Contracts\IgnoreUpdateWizard
.