Рубрики
Без рубрики

Создайте CGPA калькулятор с использованием Adonisjs: введение

Adonisjs – это Framework MVC Nodejs для построения приложений и API. Узнайте, как построить API калькулятора CGPA в этой серии.

Автор оригинала: Osinachi Chukwujama.

Вступление

Adonisjs – это Framework MVC Nodejs для построения приложений и API. В этой серии мы будем строить API калькулятора CGPA с Adonisjs. Мы будем использовать Adonis v4.1 в этой серии.

Предпосылки

  1. Начинающие знания в JavaScript и Nodejs
  2. Основное понимание API на отдых
  3. Знакомство в задней части развития Вот переподготовка на oddjs и appis

Обзор API

API позволяет потребителям

  1. Выполнить операции CRUD на курсах
  2. Рассчитайте CGPA пользователя на основе сохраненных курсов

Маршруты

Автор

/регистр ПОЧТА Зарегистрируйте новый пользователь
/авторизоваться ПОЧТА Генерирует новый JWT для пользователя

Пользователь

/Профиль пользователя ПОЛУЧАТЬ Вернуть профиль пользователя
/Профиль пользователя ПЛАСТЫРЬ Обновления профиля пользователя
/ Пользователь / адрес электронной почты ПЛАСТЫРЬ Обновления электронной почты пользователя
/пользовательский пароль ПЛАСТЫРЬ Обновляет пароль пользователя

Курсы

/ Курсы ПОЧТА Создает курс
/ Курсы? Уровень = & семестр = ПОЛУЧАТЬ Вернуть курсы пользователя.
/ Курсы /: ID ПОЛУЧАТЬ Возвращает курс
/ Курсы /: ID ПЛАСТЫРЬ Обновляет курс
/ Курсы /: ID УДАЛИТЬ Удаляет курс

Совокупность

/ совокупность ПОЛУЧАТЬ Вернуть кумулятивный пользователь
/ совокупность ПЛАСТЫРЬ Обновления совокупных пользователей

Начиная

У Adonisjs есть CLI. Этот CLI полезен для всех вещей, от миграции базы данных для тестирования. Обратитесь к документации здесь для получения дополнительной информации.

Монтаж

Откройте терминал и установите Adonis CLI

npm i -g @adonisjs/cli

Настройка нового проекта

adonis new cgpa-api

После установки измените каталог в проект и запустите сервер Dev

cd cgpa-api
adonis serve --dev

Структура базы данных

Диаграмма выше показывает структуру базы данных и отношения. Все отношения 1: 1 (один к одному), кроме пользователя для курсов, которые представляют собой 1: N (один ко многим). Это означает, что пользователь может иметь несколько курсов.

CGPA API DB Структура

Конфигурация базы данных

Adonisjs – одна из немногих кадров Nodejs с первоклассной поддержкой реляционных баз данных. Мы использовали SQLite в этой серии. Если вы предпочитаете использовать MySQL или PostgreSQL, обратитесь к Документы Для настройки инструкции. Установите SQLite3.

npm install sqlite3 --save

Миграции

Мы вернемся к состоянию нашей базы данных, используя миграции. Если вы проверяете База данных/миграции Каталог, вы найдете две файлы миграции:

1503248427885_user.js
1503248427886_token.js

Файл миграции пользователя имеет два метода: вверх и вниз Отказ Когда мы работаем нашими миграциями, ADonis запускает код в пределах вверх Способ всех ожидающих файлов миграции. Если мы возвращаем наши миграции, Adonis управляет вниз метод. В этом случае метод вниз падает Пользователи Таблица. В настоящее время наша база данных пуста. Мы не запускали наши миграции. Запустите эту команду, чтобы увидеть ожидающие миграции

adonis migrations:status
# Output
┌─────────────────────┬──────────┬───────┐
│ File name           │ Migrated │ Batch │
├─────────────────────┼──────────┼───────┤
│ 1503248427885_user  │ No       │       │
├─────────────────────┼──────────┼───────┤
│ 1503248427886_token │ No       │       │
└─────────────────────┴──────────┴───────┘

Изменение схемы таблицы пользователей

Перед запуском миграций нам нужно будет добавить несколько столбцов на Пользователи стол, изменяя 1503248427885_USER.JS Миграционный файл. Схема таблицы для пользователей показывает поля первого значения и фамилия. Добавьте эти строки в метод UP 1503248427885_USER.JS Отказ

Таблица пользователей Схема
      table.string('firstName', 80).nullable()
      table.string('lastName', 80).nullable()

Ваш вверх Метод должен быть похож на.

  up () {
    this.create('users', (table) => {
      table.increments()
      table.string('username', 80).notNullable().unique()
      table.string('email', 254).notNullable().unique()
      table.string('firstName', 80).nullable()
      table.string('lastName', 80).nullable()
      table.string('password', 60).notNullable()
      table.timestamps()
    })
  }

Ваша первая миграция

Запустите свои миграции, используя

adonis migration:run
# output: migration duration may vary
migrate: 1503248427885_user.js
migrate: 1503248427886_token.js
Database migrated successfully in 1.32 s

Большая работа до сих пор. В следующем посте мы будем смотреть в аутентификацию, маршрутизацию, контроллеры и т. Д. Перед продвижением, давайте рассмотрим то, что мы узнали.

Реконструировать

  1. Что такое Адонисс
  2. Как настроить проект Adonisjs
  3. Какая миграция базы данных Пожалуйста, дайте обратную связь на почте, если вы столкнулись с любыми проблемами. Спасибо за кодирование вместе. Adios ✌🏾🧡.