Skip to content

Introduzione

Dopo aver inizializzato una nuova risorsa, al Controller sarà agganciato un Trait:

php
use Weconstudio\Core\Traits\DataTablesProxy;

class UserController extends Controller
{
    use DataTablesProxy;

    ...
}

Oltre ai metodi API, ne sarà presente un altro che consente l'utilizzo della Datatable:

php
use Weconstudio\Core\Traits\DataTablesProxy;

class UserController extends Controller
{
    use DataTablesProxy;

    public function configuration(Request $request): UserConfiguration
    {
        return new UserConfiguration($request);
    }

    ...
}

Per poter utilizzare una qualsiasi Datatable, bisogna poi dichiarare nel file api.*.php interessato la route

php
Route::post("users/datatables", "App\Http\Controllers\UserController@datatables");
//oppure
Route::post("users/datatables", [UserController::class, "datatables"]);

E' possibile, in base al parametro type, cambiare la configurazione:

php
public function configuration(Request $request): DataTablesConfiguration
{
    return match ($request->input("type")) {
        "custom" => new UserCustomConfiguration($request),
        default => new UserConfiguration($request),
    };
}