adonisjs-querify

    1.3.2 • Public • Published

    adonisjs-querify

    Provide controller and model to handle basic crud operations and enriched api get sql search from query string in url in Adonis.js

    Installation

    Make sure to install it using npm or yarn.

    # npm
    npm i adonisjs-querify
    
    # yarn
    yarn add adonisjs-queryfy
    

    How to use

    You should register the installed package as a provider in start/app.js file

    const providers = [
     ...
      'adonisjs-querify/providers/Provider'
      ...
    ]
    

    Then you can use the available components to extend your models and controllers

    Models

    const Model = use('Freesgen/Adonis/BaseModel')
    const Database = use('Database')
    
    class TimeEntry extends Model {
     // your stuff here ...
    }
    

    Controllers

    'use strict'
    const BaseController = use('Freesgen/BaseController');
    const TimeEntry = use('App/Models/TimeEntry')
    
    class TimeEntryController extends BaseController{
    
      constructor() {
        super(TimeEntry)
      }
    

    Hit your endpoints

    /api/v1/time-entries?relationships=labels&sort=-start&limit=1

    In this case I am calling my endpioint with relationship and limit parameters. and you get the resource.

      {
        "id": 34,
        "id_company": 3,
        "user_id": 3,
        "milestone_id": null,
        "label_ids": [
          3
        ],
        "description": "Otra cosa mas",
        "billable": 1,
        "start": "2019-08-04T01:41:41.000Z",
        "end": "2019-08-04T01:41:53.000Z",
        "status": 1,
        "duration": null,
        "created_at": "2019-08-03 21:41:41",
        "updated_at": "2019-08-03 21:41:53",
        "labels": [
          {
            "id": 3,
            "id_company": 3,
            "title": "Otra cosa",
            "description": "Otra cosa",
            "color": "#f6f6f6",
            "color_format": "hex",
            "created_at": "2019-08-03 18:34:34",
            "updated_at": "2019-08-03 18:34:34",
            "pivot": {
              "label_id": 3,
              "time_entry_id": 34
            }
          }
        ]
      }
    

    Queryfy calls params

    filter

    filter[]=value&filter[field]=value

    like

    filter[]=%value%

    greater than

    filter[field]=>value&filter

    minor than

    filter[field]=<value&filter

    Sort

    {url}?sort=field for ASC, {url}?sort=field for DESC

    Install

    npm i adonisjs-querify

    DownloadsWeekly Downloads

    19

    Version

    1.3.2

    License

    ISC

    Unpacked Size

    11.9 kB

    Total Files

    7

    Last publish

    Collaborators

    • freesgen