A Laravel Nova field to run actions.

Installs: 33 875

Dependents: 1

Suggesters: 0

Security: 0

Stars: 21

Watchers: 2

Forks: 10

Open Issues: 11


v0.7.2 2021-04-20 08:20 UTC

This package is auto-updated.

Last update: 2021-07-20 08:59:11 UTC


Latest Version on Packagist Licence Total Downloads

This package allows you to execute an action directly on your resource table view.


composer require pdmfc/nova-action-button


use App\Nova\Actions\ChangeRole;
use Pdmfc\NovaFields\ActionButton;


public function fields()
    return [
            ->action(ChangeRole::class, $this->id)
            //->action(new ChangeRole(), $this->id) using a new instance

The action() method requires two params - the action class name or a new instance, and the target resource id.

Basic example

Disabling button

You can use the native Laravel nova readonly() method to prevent users from clicking the button:

    ->action(ChangeRole::class, $this->id)
    ->readonly(function () {
        return $this->role->name === 'admin';

Disabling the button

Change the button text

To edit the button text content, use the text() method.


Enable the loading animation on button and change color

To enable the loading animation on button and change color, use showLoadingAnimation() and loadingColor('#fff') method.

->loadingColor('#fff') # default is #000


  • Currently, in order to use this field, you still have to declare the action in your resource actions() method.

How to contribute

  • clone the repo
  • on composer.json of a laravel nova application add the following:

    "require" {
        "pdmfc/nova-action-button: "*"

    "repositories": [
            "type": "path",
            "url": "../path_to_your_package_folder"
  • run composer update pdmfc/nova-action-button

You're now ready to start contributing!


Please see CHANGELOG for more information on what has changed recently.