developerawam/livewire-datatable
<livewire:datatable ... />).where clauses (e.g., like for search) to avoid N+1 queries or inefficient joins. Custom query scopes can mitigate this.created_at, status). Audit existing queries post-integration.memory_get_usage() and implement chunking if needed.columns() array) scale across 50+ tables?str_contains()/array_column() usage.AbstractDataTable).livewire/livewire:^2.10).Illuminate\Database version conflicts.pdo, mbstring (common in Laravel stacks).@livewireStyles/@livewireScripts.config/datatable.php with global defaults (e.g., pagination limits).php artisan vendor:publish --provider="Developerawam\LivewireDatatable\LivewireDatatableServiceProvider"
config/app.php.use Developerawam\LivewireDatatable\LivewireDatatable;
class UserTable extends LivewireDatatable
{
public function configure(): array
{
return [
'model' => \App\Models\User::class,
'perPage' => 20,
];
}
public function columns(): array
{
return [
'id' => 'ID',
'name' => 'Name',
'email' => 'Email',
];
}
}
<livewire:user-table />
mount(), hydrate()).customQuery(), formatters) in a runbook.php artisan cache:clear) or implement wire:ignore for static elements.@livewireStyles or missing Alpine.js dependencies.--inspect flag for Chrome DevTools.dd() helpers in configure()/columns() methods.How can I help you explore Laravel packages today?