Boroda
отправляю на сервер картинку:
File {name: "11.jpg", lastModified: 1611323296316, lastModifiedDate: Fri Jan 22 2021 15:48:16 GMT+0200 (за східноєвропейським стандартним часом), webkitRelativePath: "", size: 26225, …}
в итоге req.body приходит {}
Sergey Bedritsky
Kenan
Boroda
можно пример
Boroda
тоесть через форму?
yopp
ок, пока все молчат спрошу тут. делаю аггрегацию
{ $sortByCount: '$createdAt' },
{ $project: { _id: 0, key: '$_id', value: '$count' } }
возвращает типо такого
{
"key": "2020-08-26",
"value": 121445
},
{
"key": "2020-10-08",
"value": 161190
},
{
"key": "2021-01-09",
"value": 106364
},
дальше я хочу отсортировать по порядку (и key и value нужно) но это не работает
{ $sortByCount: '$createdAt' },
{ $project: { _id: 0, key: '$_id', value: '$count' } }
{ $sort: { value: -1 } }
а что именно не работает?
yopp
что возвращает sort шаг?
Sergey Bedritsky
собственно этот я вроде сделал, но не уверен что оптимально
[
{
"$project":{
"date":{
"$dateToString":{
"date":"$createdAt",
"format":"%Y-%m-%d"
}
}
}
},
{
"$group":{
"_id":"$date",
"count":{
"$sum":1
}
}
},
{
"$project":{
"_id":0,
"key":"$_id",
"value":"$count"
}
},
{
"$project":{
"key":{
"$dateFromString":{
"dateString":"$key",
"format":"%Y-%m-%d"
}
},
"value":"$value"
}
},
{
"$sort":{
"key":-1
}
}
]
и у мне еще штуки 3 подобных надо сделать
Sergey Bedritsky
двойная конвертация дат выглядит странно
Sergey Bedritsky
вытягиваю данные для графиков
yopp
не обязательно делать первый $project, вы можете сразу в _id указать $dateToString
предпоследние два $project можно объеденить в один
Sergey Bedritsky
благодарю, исправлю
yopp
конвертировать назад в дату вы можете ещё в $group
yopp
Как-то так
[
{
"$group": {
"_id": {
"$dateFromString": {
"dateString": {
"$dateToString": {
"date": "$createdAt",
"format": "%Y-%m-%d"
}
}
}
},
"value": {
"$sum": 1
}
}
},
{
"$project": {
"_id": 0,
"key": "$_id",
}
},
{
"$sort": { "key": -1 }
}
]
Sergey Bedritsky
🤯
Dmitry
привет
а кто-то дружил джангу и монгу? Использую djonga
Проксимов
Всем привет, подскажите пожалуйста можно ли gridfs распараллелить? Сейчас с питон коннектором пробую(pymongo) в несколько процессов, и что-то оно походу лочится(
Проксимов
В gridfs примерно 200к файлов, в среднем за 8 секунд читаются. Не хотелось бы ждать 20 дней(
tmarket support
Проксимов
Nick
Nick
ищите где узкое место, если на монге ресурсы еще есть и сеть позволяет больше пересылать, то вопрос в коде
Проксимов
Вопрос можно ли распараллелить чтение из гридфс, это и есть узкое место
Проксимов
yopp
Вероятнее всего. Если монга не полностью утилизирует дисковую систему, выбрав всю пропускную способность, то проблема где-то раньше
yopp
Возможно вам не хватает размера пула соединений
yopp
И из-за этого операции блокируются пока хоть одно соединение не вернётся в пул
ZDev | Разработчик
Qq all
Horus
всем привет, кто-нибудь, может, так делал уже. Если я делаю вот такую выборку
this.chatsModel.aggregate([
{
$lookup: {
from: 'users',
localField: 'usersData.userId',
foreignField: '_id',
as: 'users',
},
},
{
$match: queryToDb,
},
{ $skip: skip },
{
$limit: limit,
},
]);
как я могу добавить туда $addFields, в котром бы ещё указал что-то вроде
$addFields: {
usersData.username: {
$match: [ '$users._id': 'usersData.userId' ]
}
}
синтаксически он не позволяет так сделать, нагуглить что-либо более-менее подходящее пока тоже не удаётся
ZDev | Разработчик
$set
Horus
$set
сенк ю со мач, сейчас гляну, що це
Horus
$set
теперь он ругается
Invalid $addFields :: caused by :: Unrecognized expression '$set'
когда я делаю так
{
$lookup: {
from: 'users',
localField: 'usersData.userId',
foreignField: '_id',
as: 'users',
},
},
{
$addFields: {
'usersData.username': {
$set: {
$match: {
$eq: ['$users._id', 'usersData.userId']
}
}
}
}
}
Google
Всем привет в Mongodb у меня в базе есть два Object как могу удалить их по ID сделал так но не удаляет можете помочь исправить ошибку ?
Google
Bogdan
Google
отдельно
Google
по ID
Bogdan
remove должно работать, правильный _id передаёте? Попробуйте findByIdAndRemove
Google
findByIdAndRemove
Anatoly
по ID
скорее всего строку шлёшь в квери. Попробуй import { ObjectId } from 'mongodb'
_id : new ObjectId(_id)
Google
Тоже пробовал
Google
Google
Google
На примую import { ObjectId } from 'mongodb' не работает
Google
Google
Kenan
Google
Google
сделал так получаю 500 ошибку
Kenan
Anatoly
сделал так получаю 500 ошибку
а _id то у тебя точно приходит ? может он undefind ну и его не получаается привести к ObjectId. консольку перед вызовом remove воткни глянь что там у тебя в _id
Google
Google
в console вижу что приходит
Google
Google
Google
Google
В базе не удаляется
Kenan
Проксимов
Проксимов
yopp
yopp
Что в логах монги? Как себя диски чувствуют?
Проксимов
Ну мб mongofiles один коннект может только держать, потому что я параллельно 9 открываю
Проксимов
аля mongofiles --uri url -d=db get 1610702410.wpd & mongofiles --uri url -d=db 1567156526.wpd & ...
yopp
yopp
Проксимов
Что в питоне, что в mongofiles
yopp
А у вас индексы в gridfs коллекциях точно есть?