LaravelPackages.net
Acme Inc.
Toggle sidebar
42sol/laravel-vxe-controller

200
1
v1.0-rc.5
About 42sol/laravel-vxe-controller

42sol/laravel-vxe-controller is a Laravel package. It currently has 1 GitHub stars and 200 downloads on Packagist (latest version v1.0-rc.5). Install it with composer require 42sol/laravel-vxe-controller. Discover more Laravel packages by 42sol or browse all Laravel packages to compare alternatives.

Last updated

Why

VxeController is designed to fast start working with VxeTable table component.

Features:

  • Data item query
  • Data items listing
  • Data items pagination
  • Filtering

Usage

Server side

To start working make these steps:

  • Create controller for model

    // app\Http\Controller\DocumentController.php
    
    use App\Models\Document;
    use VxeController\Http\Controller\VxeController;
    
    class DocumentController extends VxeController {
      function model() {
        return Document::class;
      }
    }
    
  • Register routes for controller:

    • manually
    • with simple Route::vxeController method for development purpose
      // routes/web.php
      
      Route::vxeController(\App\Http\Controllers\DocumentController::class);
      
      Routes will be registered:
      • /document - [GET, POST] - list model items
      • /document/update - [POST] - update item
      • /document/destroy - [POST] - remove item

Methods query params

Listing

| Parameter | Example | Description | |-----------|------------------------------------------------|------------------------------------------------| | id | 34 | get item with key (id) 34 | | page | 1 | number of page (set this to enable pagination) | | limit | 20 | records per page | | sort | name | field to order records | | order | asc | sort order (default "asc") | | filters | {
"datas": ["123"],
"values": []
} | filters data |

Client side

Using filters

const filters = $vxeTable.getCheckedFilters().reduce((acc, cur) => {
  acc[cur.property] = {
    datas: cur.datas,
    values: cur.values
  };
  
  return acc;
}, {});
Comments