Как правильно создать / экспортировать класс
Имеется класс, который создан для того, чтобы оперировать с моделями ORM. То есть, есть созданные модели таблиц, их нужно поместить в класс, чтобы производить операции с ними.
Вопрос в том, можно ли так делать в принципе, как делаю я и почему у меня не получается сделать нормальный экспорт.
//На входе две модели Sequelize (то есть таблицы БД в виде классов)
const {People, City} = require('/path')
создаю класс:
class MainModel {
constructor(people, city){
this.people = people
this.city = city
}
//Далее я создаю метод, в котором получаю нужные мне значения из этих таблиц
async getAll(){
//тут специфический код sequelize и далее присваиваем res какое-то значение
const res = await this.people.findAll()
return JSON.stringify(res, null, 2)
}
}
Далее я создаю экземпляр класса и экспортирую.
const newpeop = MainModel(People, City)
module.exports = newpeop
В файле роутинга я произвожу импорт из данного файла и хочу, чтобы при переходе на главную у меня выводился результат.
//в роутер файле
const mainModel = require(../path_to_model_file)
router.get('/', mainModel.getAllQuery())
По итогу получаю ошибки : Route.get() requires a callback function but got a [object Promise]
И другие, в зависимости от того, что меняю.
В чем причина? Понимаю, что указанная причина из-за получения промиса вместо значения, но не совсем понимаю, как это исправить. Сразу извиняюсь за качество кода, я совсем новичок.