Форум программистов, компьютерный форум, киберфорум
Node.js
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/25: Рейтинг темы: голосов - 25, средняя оценка - 4.56
0 / 0 / 0
Регистрация: 01.08.2016
Сообщений: 3

Вывод данных из MongoDB через Mongoose

04.05.2019, 08:11. Показов 4893. Ответов 4

Студворк — интернет-сервис помощи студентам
Я в своем приложении делаю локализацию, меня есть база данных в приложении с языковыми константами.

Суть в том, что идет подключение к БД (index.js, строка 91) - и должно выводиться все содержимое из коллекции. Но во-первых, оно почему-то выводится не всегда (то есть по рандому, да/нет), а во-вторых, когда выводится, то я могу вывести все содержимое базы в консоль, а конкретно обратиться к свойству - нет.

Объект loadedLanguage - как раз должен сохранять константы одного языка. Этот объект и передается в шаблонизатор в HTML Собственно вопрос: как поправить эти 2 бага?) вообще без понятия, в доках ничего толкового нет. Там говорится, как подключиться к базе, а подключение как раз успешное

Код я залил на гитхаб https://github.com/thesiv95/ids-parser/tree/dev

Содержимое БД находится в папке db-backup
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.05.2019, 08:11
Ответы с готовыми решениями:

Node.js и Mongodb вывод всех данных по условию
Есть бд в монго - клиенты. Надо вывести все имена клиентов у которых поле = вводимому значению. Поясню. Название бд - db. Название...

Mongoose & mongodb
Добрый день. У меня возникла проблема с доступом к базе monogodb из node приложения, посредством пакета mongoose. Нужно было создать...

Mongodb, Mongoid как ускорить запись данных в Mongodb
Добрый вечер всем! Мне нужно записать в Mongodb 2.000.000 рядов информации, по очереди, один за одним, перед записью програма проверяет...

4
Всегда онлайн
 Аватар для MrOnlineCoder
1084 / 788 / 295
Регистрация: 07.04.2013
Сообщений: 2,703
04.05.2019, 18:40
thesiv95,
1.
JavaScript
1
2
3
4
5
6
7
const langSchema = new Schema({
    ru: Object,
    en: Object,
    he: Object,
    uk: Object,
    be: Object
});
Эта схема определена неправильно, типа Object в Mongoose SchemaTypes нет (https://mongoosejs.com/docs/schematypes.html)

2. создание langSchema подразумевает что у вас будет несколько документов типа langSchema, что вроде не является правдой.

3. Почему вы для перевода используете отдельную базу MongoDB? Переводы можно же допустим хранить в файлах json, и отдавать их как статику клиенту.
0
0 / 0 / 0
Регистрация: 01.08.2016
Сообщений: 3
05.05.2019, 09:44  [ТС]
Спасибо! Да, про тип данных не подумал.

Добавлено через 1 час 34 минуты
Перезалил изменения. Но проблема с подключением к БД все равно осталась, данные выводятся через раз, и непонятно, как правильно обратиться к конкретному свойству (например, записать значение res.styles = 2 в переменную styles).

Файл index.js, строчка 63.

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
const Setup = mongoose.model('Setup', setupSchema);
var eula, lang, styles;
Setup.find({}).exec(function(err, res){
    if (err) {
        console.log('Setup DB connection error: ' + err);
        return;
    }
    
    console.log('res: ' + res);
    
    console.log('res eula' + res.eula);
    
    
});
0
Всегда онлайн
 Аватар для MrOnlineCoder
1084 / 788 / 295
Регистрация: 07.04.2013
Сообщений: 2,703
05.05.2019, 17:55
thesiv95, find() передает коллбеку (err, res) ошибку и массив документов, нужно так:

JavaScript
1
res[0].eula
0
0 / 0 / 0
Регистрация: 01.08.2016
Сообщений: 3
20.05.2019, 12:12  [ТС]
UPD: проблема решена, поменял драйвер подключения к базе на mongodb-native
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
20.05.2019, 12:12
Помогаю со студенческими работами здесь

Добавление в mongoDB через цикл
function list(){ var obj = JSON.parse(fs.readFileSync('public/tasks.json', 'utf8')); ...

Вывод таблицы из бд MySQL через php в браузер, с возможностью вноса и изменения данных прямо через ячейки
Всем здравствуйте, в общем, такая вот проблема: Есть код: <!doctype html> <html> <head> <meta...

Запрос к базе данных через форму и вывод данных на страничке
Всем привет. Очень нужна ваша помощь, вы моя последняя надежда. У меня стоит одна форма и ввожу имя человека который проходит тест, потом...

Как открыть файл из mongoDB через Vue.js?
Добрый день, коллеги. Столкнулся с проблемой не понимания, как это работает. Вот код, который через postman выводит изображение. ...

Голосовой ввод данных и вывод данных через динамики
На Android есть приложение "Pasal N-IDE" Там есть модули для ввода и вывода данных через микрофон и динамики"aRecognition" и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru