Гена
Вроде в документации написано
Гена
Типа оно отдельно будет патчиться
Владимир Т
Гена
Рад помочь)
Владимир Т
)
Radmir
Посоветуйте пожалуйста, что можно почитать про mongo, с чего начинать? Мб книги, сайты, курсы
yopp
✆
✙ Nikita
бан за sql в чате монги?)
Dmitry
Dmitry
там немного поехавший пайплайн получился
Dmitry
подскажите, а можно как-то выборку(проэкцию) сделать по маске?
Dmitry
например, есть в корне документа объект data
Dmitry
а внутри него куча полей, которые нужно выбрать все в выборке
Dmitry
Dmitry
можно как-то выбрать все поля из data и развернуть их?
✙ Nikita
это robomongo? или как там
Dmitry
Dmitry
пробую сейчас пайчармом, у него куча опция по экспорту, но не работает ни одна почему-то
Dmitry
пока так вроде заработало после перезапуска пайчарма
Dmitry
а робомонга бесплатная?
Dmitry
спасибо
WolderVsrat
Наверное глупый вопрос)
Цепочка лукапов в агрегировании получилось аццки огромной
Есть ли способы как-то распилить его на куски или описывать в разных переменных
или страдать?)
WolderVsrat
Антон
Здравствуйте
Антон
Кто поможет создать массив монго дб
Антон
Есть кто в сети
ולאד
ולאד
важный то какой
ולאד
какой массив
ולאד
кластер что ли?
Антон
Для хранения тхт файлов
ולאד
может хранить содержимое файлов?
Антон
ולאד
Антон
Максим
Andrey
Народ, а кто подрубал админку к базе, какие есть удобные способы это сделать? Смотрю в сторону react-admin, но не охота дополнительно натягивать рест на монгу
Vadim
Document {
max: 5,
array: ['а', 'б', 'в'],
}
Это возможно составить запрос find() чтобы выдало только те документы, в которых размер массива array меньше чем значение 'max' в документе?
Ki
Господа а есть смеждный чат с монгусом и гетсби ?
WolderVsrat
!спам
WolderVsrat
Или как там)
Joe
!report
WolderVsrat
@yatoba может поможет D:
охангаран
Kenan
Artem
храню date: {type: Date} у документов, подскажите, как корректно проверить разность между date и текущей датой? Проще говоря, какой я должен сделать запрос, чтоб получить все документы, разность текущей и сохраненной дат которых составляет некоторое число ?
✙ Nikita
Artem
✙ Nikita
Ну первое что приходит в голову, это $gte,$lte использовать, а границы эти вычислить на стороне приложения
Artem
Sergey
Друзья, добрый день, я совсем новенький, извените за глупый вопрос.
Вопрос: как в монге быть, если ты обновил схему, а уже очень много данных, и в каждом нужно это поле - хотя-бы null
Пример: Добавилось поле age у юзеров.
{id: '1', name: 'Vasya'}
{id: '1', name: 'Vasya', age: 22}
При получении юзеров, у половины нет этого поля.
Этот вопрос решать как-то штатными методами базы, или же его нужно решать самому
const user = db.users.findById('1')
const userKey = {name: '', age: ''}
return Object.assing({}, userKey, user )
#миграции
✙ Nikita
Друзья, добрый день, я совсем новенький, извените за глупый вопрос.
Вопрос: как в монге быть, если ты обновил схему, а уже очень много данных, и в каждом нужно это поле - хотя-бы null
Пример: Добавилось поле age у юзеров.
{id: '1', name: 'Vasya'}
{id: '1', name: 'Vasya', age: 22}
При получении юзеров, у половины нет этого поля.
Этот вопрос решать как-то штатными методами базы, или же его нужно решать самому
const user = db.users.findById('1')
const userKey = {name: '', age: ''}
return Object.assing({}, userKey, user )
#миграции
обычно на уровне орм по типу mongoose можно установить значение по умолчанию
если такая не используется, можно всем документам установить это дефолтное значние
Sergey
✙ Nikita
просто в схеме поле default
Антон
Здравствуйте,есть тут кто то?
Joe
Антон
if (query.data == 'menu_qwest') {
let Refs = await User.countDocuments({ ref: message.chat.id });
let next = Math.ceil(Refs / 10) * 10 === 0 ? 10 : Math.ceil(Refs / 10) * 10;
if (Refs < next) return bot.answerCallbackQuery(query.id, 🗣 Для получения награды нужно пригласить ещё ${next - Refs} рефералов, true);
if (message.user.ref_nagr) return bot.answerCallbackQuery(query.id, 'Вы уже получили нагарду за это задание,приступайте к следующему', true)
else {
await message.user.inc('buybalance', 10)
message.user.ref_nagr = true
await message.user.save();
return bot.answerCallbackQuery(query.id, '🎖 Вы получили награду в размере 10₽ на баланс в казино', true);
}
} сюда добавить время на выполнение с момента активации
Антон
ни кто не поможет?
Rustam
:- )
Антон
Антон
'[
Антон
эх
Joe
Ula
Привет! Есть такая схема:
const MessageSchema = new Schema({
userId: {
type: String,
required: true
},
text: {
type: String,
required: true
},
hashtags: {
type: Array,
required: true,
},
types: {
type: Array,
},
date: {
type: Date,
default: Date.now
}
});
Нужно сделать запрос, чтобы мне отдавал список уникальных hashtags и их количество. Типа:
{
hashtag: 'one'
sum: '3'
},
{
hashtag: 'two'
sum: '2'
},
Пока смог написать только такой код, который возвращает массив уникальных значений, как получить массив объектов как выше
Message.find(filter).distinct('hashtags')
.then((result) => {
console.log('2:', result)
})
.catch(err => console.log("2: err -> ", err));
Nick
Привет! Есть такая схема:
const MessageSchema = new Schema({
userId: {
type: String,
required: true
},
text: {
type: String,
required: true
},
hashtags: {
type: Array,
required: true,
},
types: {
type: Array,
},
date: {
type: Date,
default: Date.now
}
});
Нужно сделать запрос, чтобы мне отдавал список уникальных hashtags и их количество. Типа:
{
hashtag: 'one'
sum: '3'
},
{
hashtag: 'two'
sum: '2'
},
Пока смог написать только такой код, который возвращает массив уникальных значений, как получить массив объектов как выше
Message.find(filter).distinct('hashtags')
.then((result) => {
console.log('2:', result)
})
.catch(err => console.log("2: err -> ", err));
агрегацию с group
Ula
агрегацию с group
С агрегацией пока вот такое написал, но как-то неверно считает, hash всегда 1
Message.aggregate([
{
$group: {
_id: '$_id',
hashtags: { $addToSet: '$hashtags' }
},
},
{
$project: {
hash: { $size: '$hashtags' }
}
}
Nick
$unwind: "$hashtags",
$group:{
_id: "$hashtags",
sum: {$sum: 1}
}
Nick
unwind из массива сделает набор одиночный документов с тегами, и потом группируем по тегу и суммируем по одному
Ula
Sergey
Можно как-то моннге сказать что-бы свой _id документа присваевала моему полю id
Использую mongose
сорян за глупый вопрос.