Size: a a a

NestJS — русскоязычное сообщество

2021 June 23

OM

Oleksandr Myshchyshy... in NestJS — русскоязычное сообщество
Ребят, работаю с mongoDB. Мне нужно создать пользователя, но понятно что он не должен повторяться ( уникальный )

Сейчас создаю так:
async createNewUser(userDataDto: CreateUserDto): Promise {
   const createdUser = new this.userModel({ ...userDataDto });
   return createdUser.save();
 }
Но проблема в том, что mongo просто создает кучу одинаковых пользователей и не валидует их.

Как решить эту проблему?
У меня есть 2 варианта:
1. При создании вызывать find и если найдёт, то возвращать его в респонсе, если нет,  то создавать.
2. Вместо new userModel, вызывать метод findOneAndUpdateТогда код создания будет выглядеть следующем образом:
async createNewUser(userDataDto: CreateUserDto): Promise {
   return await this.userModel.findOneAndUpdate(
     { phoneNumber: userDataDto.phoneNumber },
     userDataDto,
     { upsert: true },
   );
 }


Подскажите как правильно описать эту логику?
источник

W

Wjchßlv in NestJS — русскоязычное сообщество
Оба варианта имеют право на жизнь
Но я бы выбрал второй с апсёртом + навесил бы всё-таки индексы вдовесок

https://docs.mongodb.com/manual/core/index-unique/
источник
2021 June 24

DG

Dmitry Gutoryan in NestJS — русскоязычное сообщество
Я как-то использовал typegoose, там в prop просто указал unique: true и все. У меня конкретно для мыла такое было и ругалась монга, если мыло было не уникальное
источник

OM

Oleksandr Myshchyshy... in NestJS — русскоязычное сообщество
Спасибо!
источник

DP

Dmitry Pavlichenko in NestJS — русскоязычное сообщество
Доброе утро, ребзя. Кто нибудь делал аутентификацию на сайт через гос услуги? был ли опыт у кого нибудь?
источник

D

DaunPony in NestJS — русскоязычное сообщество
Разработчик порнхаба, разлогинься.
источник

DP

Dmitry Pavlichenko in NestJS — русскоязычное сообщество
ahah
источник

ОЛ

Олег Линьков... in NestJS — русскоязычное сообщество
У них обычный oauth, подключается не сложнее Фейсбук или вк. Только вам надо зарегистрировать интеграционные решение у них
источник

ОЛ

Олег Линьков... in NestJS — русскоязычное сообщество
И чтобы они его проверили
источник

SL

S. L. in NestJS — русскоязычное сообщество
Всем привет, существует ли способ перезапустить конкретный сервис во время работы нест-приложения? Кейс такой: в сервисе работает крон и в случае возникновения ошибки нужно делать рестарт всего сервиса
источник

W

Wjchßlv in NestJS — русскоязычное сообщество
На этой фразе операторы связи проплакали кровавыми слезами
источник

W

Wjchßlv in NestJS — русскоязычное сообщество
Быстрее, кажется, пентагон сломать, нежели быстро внедрить Госуслуги и согласовать с ними все
источник

ОЛ

Олег Линьков... in NestJS — русскоязычное сообщество
Ну не знаю, сделал вход через них за две недели, кодил примерно недельку, со всеми приколами вроде получения данных
источник

ОЛ

Олег Линьков... in NestJS — русскоязычное сообщество
И за неделю они решение проверили
источник

ОЛ

Олег Линьков... in NestJS — русскоязычное сообщество
Всякие эквайринги мозги ебут больше недели, а тут госуслуги
источник

W

Wjchßlv in NestJS — русскоязычное сообщество
Оо, неужели они разобрались со скоростью согласований всяких
источник

ОЛ

Олег Линьков... in NestJS — русскоязычное сообщество
Либо у клиента просто свои "ручки" есть
источник

K

Kosmos in NestJS — русскоязычное сообщество
Кто-то сталкивался с проблемой, что asyncLocalStorage.getStore() возвращает undefined?
источник

K

Kosmos in NestJS — русскоязычное сообщество
Как вот здесь описано:
источник

K

Kosmos in NestJS — русскоязычное сообщество
источник