Правильный способ использования Mongoose в Deno

#mongodb #mongoose #deno

#mongodb #mongoose #deno

Вопрос:

В предыдущем проекте я использовал NodeJS с Mongoose для обработки схемы и подключения к БД, теперь, когда я пытаюсь перейти на Deno, я обнаружил, что у Deno еще нет Mongoose в качестве стороннего модуля.

Я видел ссылку, похоже, они используют NPM для добавления mongoose (что означает возврат к NodeJS). Схема, которую я нашел в deno_mongo, отличается от схемы, которую я использовал в предыдущем проекте.

И нет примера того, как использовать другой идентификатор коллекции в качестве ссылки на текущую коллекцию, например:

 userprofileid: {
   type: mongoose.Types.ObjectId,
   ref: "user_profiles"
},
 

итак, как преобразовать приведенный выше код?

Комментарии:


1. mongoose просто ODM. Пока нет mongoose для deno. Так что никакой магии мангуста. Если вы хотите «Как работать с реляционными документами?». Ознакомьтесь с официальным документом mongodb .

Ответ №1:

Mongoose в настоящее время не поддерживает Deno. Смотрите ответы в этом запросе функции: https://github.com/Automattic/mongoose/issues/9056 .
Как описано там, проблема в настоящее время заключается в том, что Deno выдает ошибку с модулем require_optional npm, который драйвер MongoDB использует внутренне.

Вторая проблема:

Даже без require_optional в Deno в настоящее время нет полизаполнения для модуля шифрования узла: https://deno.land/std/node/README.md . Драйверу MongoDB будет сложно обойти это.

похоже, проблема решена. Тем более, что уже есть модули для подключения к MongoDB.

Если вы можете обойтись без ODM от Mongoose, тогда вы можете использовать Deno Mongo (https://github.com/denodrivers/deno_mongo ). Это подключает вас к базе данных, и вы можете отправлять свои запросы напрямую с помощью команд базы данных Mongo.

Если вы посмотрите на сторонние модули на странице Deno и выполните поиск по Mongo, вы, к сожалению, обнаружите, что в настоящее время нет модуля ODM для Mongo DB (https://deno.land/x?query=mongo )

Комментарии:

1. спасибо за ваш ответ, могу ли я узнать, поддерживает ли этот Deno Mongo учетные данные? в прошлый раз, когда я пытался использовать Mongo в Deno, они могут подключаться только без учетных данных

2. На самом деле я собираю все требования, используя Deno для моего следующего проекта. Поэтому я скоро протестирую его и дам вам знать.

3. приятно это знать! хорошо, буду ждать вашего результата.

Ответ №2:

Похоже, аналогичный ODM для Deno на https://dangodb.land /