undefined

Lucid

Lucid is AdonisJS' Object Relational Mapping (ORM). It's a first-party package that follows the active record pattern. With it you can easily perform CRUD operations, add database hooks, normalize data, and so much more.

12 Series
158 Lessons
Database

Lessons

Video preview
Adocasts Plus Exclusive
Exclusive
Meilisearch Index Ace CLI Command
Video preview

Creating a Command to Index Data in Meilisearch

In this lesson, we'll create an Ace CLI command to index our pre-existing data within our Meilisearch database so it is ready to search against. We'll walk our way through this and point out what to watch out for and how to view task errors.

Video preview
Adocasts Plus Exclusive
Exclusive
Seeding Fake Data
Video preview

Seeding Fake Data to Index for our Multi-Search

In this lesson, we'll create a database seeder that will utilize our model factories to generate plenty of fake data to index and search against. We'll also discuss how we can easily batch insert bulk data in a single call.

Video preview
Adocasts Plus Exclusive
Exclusive
Migrations, Models, and Factories
Video preview

Creating our Database Migrations, Models, and Factories

In this lesson, we'll work on structuring our database by defining our migrations, Lucid models, and model factories to aide in generating fake data we'll later index and search against with Meilisearch.

Video preview
Adocasts Plus Exclusive
Free in 3 days
What We'll Be Building
Video preview

What We'll Be Building

In this series, we'll be building a completely server-rendered multi-search using Meilisearch, Unpoly, and a little AlpinzeJS. We'll setup the open-source version of Meilisearch locally, setup seeders and factories to build fake data to index, and more!

Video preview
Globally Altering the Base Model
Video preview

How To Globally Alter Lucid's BaseModel

In this lesson, we'll discuss how we can globally alter Lucid's BaseModel to make global changes across all our application's models. We'll walk through globally changing the naming strategy and extras serialization as examples.

Video preview
Adocasts Plus Exclusive
Exclusive
Inspecting Lucid Queries
Video preview

Inspecting Lucid Queries for Index Analysis

In this lesson, we'll walk through how you can inspect specific or all Lucid queries within your AdonisJS application. We'll then use this to analyze a slow queries execution plan, determine an appropriate index to add, and add that index via a migration.

Video preview
Adocasts Plus Exclusive
Exclusive
Optional Relationship Loading
Video preview

User-Defined Relationship Loading

In this lesson, we'll let our users tell us which relationships they'd like to get back in our lesson search. We'll also discuss how to handle nested relationships and what to watch out for.

Video preview
Adocasts Plus Exclusive
Exclusive
Filtering by Publish Date
Video preview

Filtering Lessons by Publication Date

In this lesson, we'll add the ability to search lessons by their publish date and time. We'll utilize before and after properties to allow for filtering that can look forward, backward, or within a specific date range on our lesson's publish at column.

Video preview
Adocasts Plus Exclusive
Exclusive
Searching and Filtering Lessons
Video preview

Searching and Filtering Lessons

In this lesson, we'll take the filters we've created thus far and apply them to a new lessons search endpoint. We'll be able to search our lessons by name, status, access level, and module.

Video preview
Adocasts Plus Exclusive
Exclusive
Filtering by a Number or Array of Numbers
Video preview

Filtering by a Number or Array of Numbers

In this lesson, we'll implement our number filtering system in which we'll allow our search APIs to accept a single number or an array of numbers to filter the data by. To validate this, we'll use the union rule from VineJS.

Video preview
Adocasts Plus Exclusive
Exclusive
Advanced String Filtering
Video preview

Advanced String Filtering

In this lesson, we upgrade our course name filter to support both simple strings and advanced object-based queries using VineJS’ union rule. This allows users to specify not just what to search for, but how to search for it.

Video preview
Adocasts Plus Exclusive
Exclusive
Basic Course Filtering
Video preview

Basic Course Search & Filter

In this lesson, we'll add a new search endpoint for our courses and enable some basic filter functionality along with it. We'll be able to search by course name likeness, status, difficulty, and/or access level.

Video preview
Adocasts Plus Exclusive
Exclusive
Getting A Module's Lessons
Video preview

Getting A Module's Lessons

In this lesson, we'll remove our lesson's index method in favor of a module method whose purpose will be to fetch a module's specific lessons in their stored order.

Video preview
Adocasts Plus Exclusive
Exclusive
Get Modules Endpoint
Video preview

Getting Just Course Modules & Lessons

In this lesson, we'll remove our GET module route, using the except method on our resource. Then we'll refactor to add a GetModules action

Video preview
Adocasts Plus Exclusive
Exclusive
Course Modules Nested Resource
Video preview

Course Module Nested Resource

In this lesson, we'll work on nested resourceful endpoints for our course modules. We'll add endpoints to create, update, patch, and deleting modules from a specific course.

Video preview
Adocasts Plus Exclusive
Exclusive
Patching Course Tags
Video preview

Updating A Course's Difficulty, Status, or Access Level

In this lesson, we'll add a specific endpoint with the ability to patch a course's difficulty, status, or access level with a new value so our users have a way to update these without needing to send the entire course payload.

Video preview
Adocasts Plus Exclusive
Exclusive
Course Modules & Lessons
Video preview

Getting A Course's Details, Modules, & Lessons

In this lesson, we wrap up the Courses controller by adding a show method that fetches all the key info for a single course. That includes its modules and lessons, all nicely organized and ready to use in your API response.

Video preview
Adocasts Plus Exclusive
Exclusive
Paginating Courses
Video preview

Paginating our Course List

In this lesson, we'll transform our courses list endpoint into a pagination endpoint. We'll check and validate our query string for a page and per page parameter that we'll then use to fetch pages of our courses.

Showing 1 to 18 of 156 results