Azioni di Massa
Seleziona più righe con caselle di spunta, poi modificale o eliminale tutte in massa in un'unica richiesta.
Attivazione
bulk_actions($enabled = true) aggiunge una colonna di caselle di spunta - la più a sinistra, prima di ogni altra colonna - che permette al visitatore di selezionare più righe nella pagina corrente. Una casella di spunta "seleziona tutto" nell'intestazione seleziona/deseleziona ogni riga della pagina corrente. La selezione non viene azzerata da un cambio di pagina/ricerca/ordinamento, quindi persiste anche su più pagine, finché non viene esplicitamente azzerata:
$xcrud->table('products');
$xcrud->columns('productCode,productName,productLine,quantityInStock,buyPrice');
$xcrud->bulk_actions();
Non appena viene selezionato qualcosa, compare una barra che mostra quante righe sono selezionate, più i pulsanti di modifica e eliminazione in massa.
Eliminazione in massa
Rimuove ogni riga selezionata in un'unica richiesta (DELETE ?ids=1,2,3 contro ajax_crud.php - un'unica query WHERE pk IN (...), non N richieste separate), dietro la stessa conferma di ->remove_confirm() già usata per una singola eliminazione.
Modifica in massa
Apre un modulo che elenca ogni campo modificabile, ciascuno con la propria casella di spunta "applica questo campo" accanto a un normale controllo consapevole del tipo - deselezionata (e con il proprio controllo disabilitato) per impostazione predefinita, così nulla viene toccato a meno che non venga esplicitamente attivato. Vengono inviati solo i campi selezionati, applicati a ogni riga selezionata in un'unica richiesta (PUT ?ids=1,2,3). Non esiste un unico "valore corrente" da mostrare quando sono coinvolte più righe, quindi ogni controllo parte vuoto/predefinito invece che precompilato da una qualsiasi riga specifica.
->pass_var() si applica comunque sia alla modifica sia all'eliminazione in massa, imposto lato server esattamente come per una singola creazione/aggiornamento.
Tabella delle opzioni
| Chiamata | Effetto |
|---|---|
bulk_actions() | Abilita la colonna di caselle di spunta, il seleziona-tutto e la barra degli strumenti di modifica/eliminazione in massa. Disattivato per impostazione predefinita. |
bulk_actions(false) | Lo disattiva esplicitamente. |