Если вы не выполнили предыдущие шаги или не настроили базу данных 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 для справки.
Вот следующий шаг:
Удачного кодирования!