NextJS Шаблоны

Учебное пособие по приложению для бронирования конференц-залов с использованием Back4App, Next.js и Vercel

23min

В этом учебном пособии вы создадите Bookit, систему бронирования конференц-залов, используя Next.js в качестве фронтенд-фреймворка и Back4App в качестве бэкенд-сервиса. Вы реализуете аутентификацию пользователей, управление комнатами и функциональность бронирования, а также развернете приложение на Vercel.

1. Предварительные требования

Чтобы завершить это учебное пособие, вам понадобятся:

2. Настройка Back4App

  1. Войдите в свою учетную запись Back4App и перейдите на панель управления проектом.
  2. В левой боковой панели нажмите на База данных для доступа к браузеру данных.
  3. Вам нужно будет создать следующие классы для моделирования данных:

2.1. Создайте класс Пользователь

  • email: Адрес электронной почты для входа
  • password: Пароль (хэшированный)
  • username: Необязательное имя пользователя

2.2. Создайте Room Класс

  1. В Data Browser, нажмите Создать класс, выберите Пользовательский, и назовите класс Комната.
  2. Добавьте следующие столбцы:

Имя столбца

Тип

Описание

имя

Строка

Название комнаты

описание

Строка

Описание комнаты

вместимость

Номер

Количество людей, которые может вмещать комната

удобства

Массив

Список удобств (телевизор, WiFi и т.д.)

цена

Номер

Цена за час

изображение

Файл

URL изображения

владелец

Указатель

Указывает на Пользователь класс

2.3. Создайте Booking класс

  1. Создайте другой пользовательский класс с именем Booking.
  2. Добавьте следующие столбцы:

Название столбца

Тип

Описание

комната

Указатель

Указывает на класс Room

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

Указатель

Указывает на класс User

заезд

Дата

Дата/время начала бронирования

выезд

Дата

Дата/время окончания бронирования

3. Настройка Next.js и Parse SDK

  1. Создайте новый проект Next.js:
Bash

  1. Установите Parse JS SDK:
Bash

  1. В файле pages/_app.js инициализируйте Parse с вашими учетными данными Back4App:
JS


Замените 'YOUR_APP_ID' и 'YOUR_JAVASCRIPT_KEY' на ваши учетные данные приложения Back4App.

4. Реализация аутентификации пользователей

4.1. Регистрация пользователя

Создайте новую страницу pages/signup.js с формой регистрации:

JS


4.2. Вход пользователя

Создайте pages/login.js для входа пользователя:

JS


4.3. Защищенные маршруты

Для защищенных маршрутов вы можете использовать API маршруты Next.js и проверить, аутентифицирован ли пользователь:

JS


5. Управление комнатами

5.1. Отображение доступных комнат

Создайте pages/index.js для отображения доступных комнат:

JS


5.2. Добавление комнаты

Создайте pages/add-room.js для добавления новых комнат (для авторизованных пользователей):

JS


5.3. Детали комнаты

Создайте pages/rooms/[id].js для просмотра подробной информации о комнате:

JS


6. Система бронирования

6.1. Бронирование номера

Добавьте функциональность бронирования в pages/rooms/[id].js добавив форму бронирования:

JS


6.2. Просмотр и отмена бронирований

Создайте pages/my-bookings.js для просмотра и отмены бронирований:

JS


7. Развертывание на Vercel

  1. Установите Vercel CLI:
Bash

  1. Разверните ваше приложение Next.js с помощью:
Bash


Следуйте инструкциям, чтобы развернуть ваше приложение на Vercel. После развертывания ваше приложение будет доступно по публичному URL.

8. Заключение

В этом учебном пособии вы создали приложение Bookit с использованием Next.js для фронтенда и Back4App в качестве бэкенда. Вы реализовали аутентификацию пользователей, управление комнатами и функциональность бронирования. Наконец, вы развернули приложение на Vercel. Теперь вы можете расширить приложение дополнительными функциями, такими как поиск, интеграция платежей или уведомления.