Если вы не выполнили предыдущие шаги или не настроили базу данных mlab.







Отлично, давайте настроим нашу модель, которая будет структурой для базы данных, которая по умолчанию настраивает отдельную коллекцию для этой модели. Давайте сначала перейдем в папку наших моделей в папке нашего сервера за пределами нашего каталога src. Затем создайте файл product.js для нашей модели продукта и файл user.js для наших пользователей.

cd server
cd models
touch product.js
touch user.js

Теперь перейдите в наши файлы product.js и начните определять нашу модель. Для начала импортируйте модуль мангуста. Затем установите переменную с именем Schema, которая будет равна экземпляру класса Schema, используемого для определения структуры данных, которые вставляются в данные.

const mongoose = require('mongoose');
const Schema = mongoose.Schema;

Определите свойства объекта с именем, описанием и ценой.

//Need an id, name, description, price,
//Id is created by default in mongodb
const product = new Schema({
name: String,
description: String,
price: Number
});

Чтобы создать модель, используйте метод модели схемы с именем модели в качестве первого аргумента и объекта в качестве второго аргумента. Затем экспортируйте его.

//To create a model, use the name of the model, and the schema with the properties of the model
// that  wil be inserted to the  database.
module.exports = mongoose.model('Product', product);

Теперь давайте определим нашу модель пользователя, которую мы будем использовать позже для аутентификации с Auth0. Перейдите в файл user.js и определите свою модель.

const mongoose = require('mongoose');
const Schema = mongoose.Schema;

Теперь давайте определим вашу модель, которая будет иметь имя пользователя, имя, адрес электронной почты и auth0_id. Мы рассмотрим auth0 позже в этом руководстве.

//Define your User Collection Objects Structure
//With datatypes
//We'll be using Auth0 for authentication in the future.
const user = new Schema({
//THis is where the user will login
//For Now we will be inserting test data
name: String,
email: String,
username: String,
auth0_id: String
});

Теперь давайте экспортируем наше модальное окно с именем в качестве первого аргумента и объектом, переданным в качестве модели.

//Export the model on the mongoose.
//So this model will be inserted to the database.
module.exports = mongoose.model('User', user)

Когда мы вставляем эти модели в базу данных, они автоматически генерируют идентификатор по умолчанию. ПРИМЕЧАНИЕ: пока не запускайте файл сервера, в следующем руководстве нам еще нужно определить файл контроллера.

Итак, наши модели настроены.

Теперь мы приступим к реализации этих моделей на шаге 3C.

Здесь репозиторий git для справки.



Вот следующий шаг:



Удачного кодирования!