Thứ Hai, 12 tháng 4, 2021

AdonisJS là gì? Node JS + Mysql?


https://adonisjs.com/docs/4.1/about
AdonisJs là một Node.js MVC framework

Hỗ trợ thêm một số thành phần quan trọng như:
- Hỗ trợ SQL ORM, bảo mật SQL queries.
- Hỗ trợ API & Session dựa trên hệ thống xác thực được cấu hình sẵn.
- Hỗ trợ cấu hình send mail thông qua SMTP hoặc Web Service (Mailgun, Mandrill, etc.)
- Kiểm duyệt mỗi input mà user gửi vào hệ thống
- Hỗ trợ bảo mật nhiều lớp
- Mở rộng application layout dễ dàng

Adonis hỗ trợ rất tốt cho những DB như: PostgreSQL, SQLite, MySQL, MariaDB, Oracle, MSSQL.

Nếu muốn kết nối với các cơ sở dữ liệu NoSQL như MongoDB
thì phải sử dụng đến những provider của bên thứ 3. Chẳng hạn như:
adonis-mongorito
adonis-lucid-mongodb.

## Tạo mới một dự án
npm i -g adonis-cli
adonis new adonis_common
cd adonis_common
adonis serve --dev

Kiểm tra adonis version: adonis --version

## Cấu trúc thư mục
├── app: chứa các thành phần chính của ứng dụng
│ ├── Commands: lưu các CLI commands.
│ ├── Controllers: lưu Http và WebSocket controllers.
│ ├── Exceptions: Xử lý các ngoại lệ, lỗi.
│ ├── Listeners: Lưu các file event listeners.
│ ├── Middleware: Xử lý trước/sau mỗi request được gửi đến.
│ ├── Models: lưu các file kết nối và xử lý dữ liệu với Database.
│ ├── Validators: kiểm tra các request có đúng chuẩn hay không.
├── config: chứa config database, session, auth, mail...
├── database: chứa các file migration, seeder, factory để khởi tạo dữ liệu nền
│ ├── migrations: tạo bảng mới, chỉnh sửa một bảng(thêm cột, xóa cột..)
│ └── seeds: tạo các dữ liệu cơ bản của ứng dụng
│ └── factory.js
├── public: chứa các thành phần tĩnh của dự án như images, css, javascript
├── resources: nơi chứa view, sử dụng view engine Edge
│ └── views
├── storage: nơi chứa file biên dịch template, session hoặc các file log của hệ thống
├── start: nơi chứa các file dùng khởi tạo apps, đăng kí app như app.js, hooks.js, routes.js
├── test
├── ace
├── server.js
└── package.json

Chú ý:
- Tất cả các file lưu trong thư mục app đều được load tự động và có namespace chung là App.
- Thư mục public được mapping với thư mục gốc của website
<!-- file vật lý lưu ở /public/style.css -->
<link rel="stylesheet" href="/style.css" />
- Thư mục resources chuyên dùng để lưu tất cả các file liên quan đến view templates,
LESS/SASS files, uncompiled JavaScript, or even images.

## Providers
AdonisJs là một modular framework mà bao gồm nhiều service providers
để xậy dựng nên các thành phần trong ứng dụng.
Ví dụ: BodyParser để đọc HTTP request body, or Lucid hỗ trợ kết nối SQL thông qua ORM

## Request Flow
Một HTTP request đến server sẽ được xử lý bởi `server module`,
sau đó thực thi tất cả các `serverMiddleware`.
-->
Sau đó nữa nó được xủ lý tiếp bởi `Router module`.
Ở đây sẽ tìm tất cả các route mà tương thích với request.
Nếu không có route nào tương ứng một RouteNotFound exception sẽ được ném ra.
-->
Sau khi tìm được một route tương thích, tất cả các `globalMiddleware``namedMiddleware`
chạy kèm route đó sẽ được xử lý.
Nếu không có bất kì lỗi nào thì route handler sẽ được gọi và xử lý request.


Không có nhận xét nào:

Đăng nhận xét

Học lập trình web căn bản với PHP

Bài 1: Các kiến thức căn bản Part 1:  https://jimmyvan88.blogspot.com/2012/05/can-ban-lap-trinh-web-voi-php-bai-1-cac.html Part 2:  https://...