
Andruha
27.06.2018
15:25:00

Yurii
27.06.2018
15:25:46
это я сюда в чат написал для простоты
ну ты же понимаешь связь между ref и mongoose.model ?
Я уточняю, потому, что это может не работать, так как нет модели в памяти монгуса, на которую ты делаешь ref...

Andruha
27.06.2018
15:25:52
а то обычно начинают спрашивать "что за константа", "что за переменная"

Google

Yurii
27.06.2018
15:27:39

Andruha
27.06.2018
15:28:47
да уже без него попробовал - не зашло, уже не знаю куда смотреть, сравниваю две модели - вроде все сходится, только одна работает, другая нет ))
вот что пишет Mongoose: orders_log.find({}, { fields: {} })
orders_log - это моя Model

Yurii
27.06.2018
15:32:59

Andruha
27.06.2018
15:33:59
ща напишу 1 в 1 как у меня
Модель:
const Schema = mongoose.Schema;
const modelSchema = new Schema(
{
dropLog: {
type: Schema.Types.ObjectId,
ref: tools.TBL.DROP_LOG,
unique: true
},
balanceLog: {
type: Schema.Types.ObjectId,
ref: tools.TBL.BALANCE_LOG,
unique: true
},
status: {
type: Number,
required: true,
index: true
}
},
{
collection: tools.TBL.ORDERS_LOG,
timestamps: {
createdAt: 'created_at',
updatedAt: 'updated_at'
}
}
);
const Model = mongoose.model(tools.TBL.ORDERS_LOG, modelSchema);
module.exports = Model;
Роутер:
const Orders = require('../models/orders_log');
const t1 = await Orders.find().populate(tools.TBL.BALANCE_LOG);
ну документы из модели ORDERS_LOG оно мне выдает же
да сделал
результат есть, а вот в монгусе никак не хочет


yopp
27.06.2018
16:36:11
Stable: 4.0.0 (Jun 27, 2018) Bugfix: 3.6.5 (May 25, 2018), Legacy: 3.4.15 (May 16, 2018)
MongoDB quick overview/production notes: https://www.percona.com/live/e17/sites/default/files/slides/Running%20MongoDB%20in%20Production%20-%20FileId%20-%20115299.pdf
4.0.0: https://docs.mongodb.com/manual/release-notes/4.0/
3.6.5: https://docs.mongodb.com/manual/release-notes/3.6/#may-29-2018
3.4.15: https://docs.mongodb.com/manual/release-notes/3.4/#may-16-2018
3.2.20: https://docs.mongodb.com/manual/release-notes/3.2/#may-10-2018 (End of life: September 2018)
3.0.x: Support ended February 2018

Google

yopp
27.06.2018
16:36:28
4.0.0 https://docs.mongodb.com/manual/release-notes/4.0/
Ничоси
Сентябрь-сентябрь
https://www.mongodb.com/blog/post/mongodb-multi-document-acid-transactions-general-availability

Andruha
27.06.2018
16:38:08
одинаковый результат
Да) ну где-то что-то я упускаю) работал над проектом пару месяцев назад, сейчас вернулся, надо внимательно изучить ранее сделанные модели, где все работает. Пойду освежу голову на улице и вернусь к этому делу) спасибо за участие)

Peter
27.06.2018
16:43:45
Это 4.0.0 вышла уже?

invzbl3
27.06.2018
17:11:58
ребят, у кого-то была проблема с загрузкой данных из файла такого плана? пишу: mongo --eval "load('products__m101.js')" (файл лежит на рабочем столе)
уже не знаю, где ту точку с запятой втулить, чтобы команда сработала

Nick
27.06.2018
17:17:24
строка 2 позиция 4

invzbl3
27.06.2018
17:44:55

Nick
27.06.2018
17:45:36
ошибка валидатора кода в products__m101.js, значит и ошибка там
скинь сюда первые 5 строк файла

invzbl3
27.06.2018
17:45:56

Nick
27.06.2018
17:49:22

invzbl3
27.06.2018
17:49:54
скинь сюда первые 5 строк файла
да,
use agg
db.products.drop()
db.products.insert({'name':'iPad 16GB Wifi', 'manufacturer':"Apple",
'category':'Tablets',
'price':499.00})
дальше просто дублируются по такому же принципу

Google

invzbl3
27.06.2018
17:51:50
на скрине я добавил еще после скобок ;
пробовал и без, но ошибка остается

Nick
27.06.2018
17:52:23
у вас пробелма в use

invzbl3
27.06.2018
17:53:50

Nick
27.06.2018
17:55:03
db = db.getSiblingDB('<db>')
https://docs.mongodb.com/manual/tutorial/write-scripts-for-the-mongo-shell/
вместо
use agg
использовать
db = db.getSiblingDB('agg')

invzbl3
27.06.2018
17:56:09
сейчас попробую
да, отлично, добавилась база в монгу
еще раз, спасибо
а в коде красным, действительно, строчка подчеркивалась
понял, проблема была из-за того, что в коде использовалась строчка shell-а

Снобяъ
27.06.2018
20:02:20
При работе с Robo 3t нужно отдельно скачивать монгу с сайта?

Dmitriy
27.06.2018
22:18:52

Bat
28.06.2018
05:46:56
в следующем блоке такой же апсерт в соседнюю коллекцию
в рутере читаю данные из 3ей коллекции, несвязанной с первыми двумя. но как уже сказал глобальный лок не дает мне это сделать. апсерты в одном подключении, в рутере отдельное подключение

Nick
28.06.2018
06:28:21
Может вы реально используете один коннект и синхронный драйвер?

Bat
28.06.2018
06:29:55

Google

Bat
28.06.2018
06:30:27

Nick
28.06.2018
06:30:48
Что рутер?

Bat
28.06.2018
06:31:05
експресс

Nick
28.06.2018
06:33:17
Т.е. nodejs

Bat
28.06.2018
06:33:40
да

Nick
28.06.2018
06:33:46
Сдается мне драйвер синхронный

Bat
28.06.2018
06:35:22
штатный драйвер. было бы крайне странно
у меня параллельно запущен монго экспресс (ui морда) и там никакой проблемы в чтении данных нет когда вставка идет. правда там другой юзер

Nick
28.06.2018
06:38:47
Версия драйвера?

Bat
28.06.2018
06:39:42
3.0.9

Nick
28.06.2018
06:41:53
А почему не используете нормальный способ подплючения а оьорачиваете в промис?
У вас проблема там гдето, жаль по js особо не подскажу

Bat
28.06.2018
06:42:47
это я уже переделал пытаясь понять, что я не так делаю.

Nick
28.06.2018
06:44:07
Не надо мудрить, http://mongodb.github.io/node-mongodb-native/3.1/tutorials/connect/
К тому же тут вопрос как нода оьрабатывает промисы, она ж сама по себе однопоточная
Вы тут на ксждфй чих создаете новый коннект, ненадо так, один раз подключились к базе и тащите ее куда вам надо

Mikhail
28.06.2018
08:00:18

yopp
28.06.2018
11:26:53

Bat
28.06.2018
11:47:42

Nick
28.06.2018
12:01:10

Google

Sergei
28.06.2018
12:19:03
Привет, по mongoose тоже сюда вопрос?

Andruha
28.06.2018
12:56:27
в монгусе была схема, были созданы документы в коллекции по этой схеме, потом я в схему добавил новое поле, прошелся по всем документам в pre('save') вроде как записал значение в новое поле, но документы не обновились. Это норм или нет? Нужно ли при изменении схемы удалять документы и создавать их снова? или структура документов должна обновиться в соответствии с обновленной схемой?

Sergei
28.06.2018
13:08:10
В более ранних версиях mongoose я указывал какую реализацию обещания нужно исмользовать монгусу mongoose.Promise = global.Promise; это было даже в примере на главной странице фреймворка. Сейчас там уже нет этой строчки, я так понимаю это уже не актуально?

Andruha
28.06.2018
13:11:33
версия 3,4

Sergei
28.06.2018
13:17:48
ну вот у меня в прошлом проекте тоже было mongoose": "^5.0.1",

Anatoliy Skuratov
28.06.2018
13:21:16