Action buttons
Last updated
Last updated
<?php
namespace App\Actions;
use TCG\Voyager\Actions\AbstractAction;
class MyAction extends AbstractAction
{
public function getTitle()
{
return 'My Action';
}
public function getIcon()
{
return 'voyager-eye';
}
public function getPolicy()
{
return 'read';
}
public function getAttributes()
{
return [
'class' => 'btn btn-sm btn-primary pull-right',
];
}
public function getDefaultRoute()
{
return route('my.route');
}
}<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use Illuminate\Events\Dispatcher;
use TCG\Voyager\Facades\Voyager;
class AppServiceProvider extends ServiceProvider
{
public function boot()
{
Voyager::addAction(\App\Actions\MyAction::class);
}
}<?php
public function shouldActionDisplayOnDataType()
{
return $this->dataType->slug == 'posts';
}<?php
public function massAction($ids, $comingFrom)
{
// Do something with the IDs
return redirect($comingFrom);
}