Я супер n00b при настройке серверов - просто изучаю фоновые вещи прямо сейчас, поэтому мне трудно найти решения, потому что мой технический язык отсутствует - заранее прошу прощения за вопрос n00b.
Я сопровождаю мультимедийное видео Traversy, чтобы попытаться немного больше узнать о настройке сервера и использовании базы данных для хранения и извлечения данных.В видео используется mongoose / mongodb - у меня есть только небольшой опыт использования postgreSQL, и я даже близко не разбираюсь в этом, так что концептуально это все еще довольно незнакомо.
Я обнаружил, что очень скучно открывать три окна терминала, чтобы мой проект работал правильно.Я использую mongoose v5.4.2, express v4.16.4 и (хотя я сомневаюсь, что это актуально), я использую express-handlebars v3.0.0 в самой последней версии macOS (10.14.2) (используя собственный терминал).
В моем package.json у меня нет сценариев.
Чего я пытаюсь избежать: мне нужно открыть несколько вкладок терминала и запустить демон mongo (cmd: mongod
),затем запустить клиент Монго на отдельной вкладке (cmd: mongo
).Я новичок, но, похоже, было бы неплохо иметь некоторые базовые сценарии, чтобы избавить меня от необходимости делать это каждый раз, когда я открываю проект или изменяю вещи.
Мой app.js (который является точкой входа в мой проект) имеет следующий код для импорта и запуска mongoose:
const express = require('express')
const exphbs = require('express-handlebars')
const mongoose = require('mongoose')
const app = express()
mongoose.Promise = global.Promise
// Connect to Mongoose
mongoose.connect('mongodb://localhost/vidjot-dev', { useNewUrlParser: true } )
.then(() => console.log('MongoDB Connected'))
.catch(err => console.log(err))
Я проверил, что мой проект выполняется на указаннойпорт (3000 для моего проекта), и я могу запустить свою базу данных mongoose - но только если я запускаю демон mongo, а затем клиент mongoose.
Прошу прощения за отсутствие конкретики / технической корректности в моем языке - яЯ очень новичок в этом деле.Я надеюсь, что я предоставил достаточно информации, но отредактировал пост, чтобы предоставить что-то, что кто-либо еще посчитает уместным.Я использовал управляемую версию, чтобы опубликовать это, так что я думаю, что ударил всю необходимую / ожидаемую информацию.