Javascript-форум (https://javascript.ru/forum/)
-   Node.JS (https://javascript.ru/forum/node-js-io-js/)
-   -   Почему я не могу получить список категорий? (https://javascript.ru/forum/node-js-io-js/83683-pochemu-ya-ne-mogu-poluchit-spisok-kategorijj.html)

CryNet 12.02.2022 21:12

Почему я не могу получить список категорий?
 
Коллекция выглядит так:

Схема так:
const categorySchema = new mongoose.Schema({
  title       :   { type : String },
  subCategories:  [
    {
      name: { type: String }
    }
  ]
})

Но если я делаю запрос за категориями:
await Category.find()


То вижу пустой массив. Что я делаю не так?

ksa 12.02.2022 21:34

Цитата:

Сообщение от CryNet
Что я делаю не так?

Твой пример как минимум не полный... :-?

Кабы ты показал программку которая:
1. Сделала схему
2. Подключилась к монгодб
3. Создала и записала данные по той схеме
4. Вывела бы те данные и в них был бы пустой массив

Такую программку мог бы потестить у себя на компе любой желающий и дать свое предложение для тебя.

Например мы не используем монгус для работы с монгодб...
Используем mongojs, а там схем нет. Но нет и проблем с выводом данных. :)
В утилитах используем mongodb (так называется сам пакет), там так же нет схем...

Я бы потестил монгуса, если ты сделаешь работоспособный пример. ;)

CryNet 12.02.2022 22:04

Цитата:

Сообщение от ksa (Сообщение 543685)
mongojs

О, интересно узнать чем лучше/хуже. Ошибку нашёл. Опечатку не заметил в "subCategories"

ksa 13.02.2022 09:52

Цитата:

Сообщение от CryNet
интересно узнать чем лучше/хуже

Мне этот модуль больше понравился...

При разработке ПО работать без схем мне кажется удобнее. Поскольку сама структура данных на 100% не известна, есть только основной "каркас" в виде УИЛ диаграмм.

Так же этот модуль имеет событийный вариант по обработке данных, это мне больше импонирует.
Так же в нем есть "Bulk updates", т.е. некий аналог транзакций...

ksa 13.02.2022 09:54

Цитата:

Сообщение от CryNet
Опечатку не заметил в "subCategories"

Вот с mongojs (или mongodb) на такое бы ты не попал. Получил бы весь документ как есть.

CryNet 13.02.2022 18:48

Цитата:

Сообщение от ksa (Сообщение 543690)
Вот с mongojs (или mongodb) на такое бы ты не попал. Получил бы весь документ как есть.

Спасибо за ответ

Vlasenko Fedor 14.02.2022 22:39

CryNet,
Советую забыть и похоронить mongo. Так как хайп давно прошел, профита от этой бд нет, и с переходом на платную лицензию место ей в гробу.
Возьмите sequlize как orm, и любую поддерживаемую реляционную бд

ksa 14.02.2022 23:34

Vlasenko Fedor, откуда такие выводы?
Про платность так же не понятно... Пока все бесплатно.

Vlasenko Fedor 14.02.2022 23:51

Википедия, а ещё опыт этого дерьма говорит, что не стоит
"Over the years, I have experienced endless fucking and bewilderment when trendy boys choose trendy NoSQL databases without transactions and joins for microbases for 1-10K users .
In my eyes, they buy sandpaper instead of toilet paper for their toilet and brush their teeth with a file. In their eyes, I am a middle-aged, unfashionable fart who is not able to appreciate and master new cool webscale technologies.

You've reached a dead end
You need to use SQL
Postgres, MariaDb, MySql ...
"
Я не противник NoSql, но задачи где используются документооборотные
базы не встречаются повседневно
У этой базы проблемы с работой с большими документами ранее не больше 500 мб, а новые версии и вовсе имеют ограничения в процессорах

ksa 15.02.2022 08:09

Vlasenko Fedor, т.е. пока ты сам выступаешь в роли могильщика этой СУБД. :D

Цитата:

Сообщение от Vlasenko Fedor
У этой базы проблемы с работой с большими документами ранее не больше 500 мб

Не всем нужны такие большие документы.

Vlasenko Fedor 15.02.2022 09:15

ksa,
Назовите преимущества этой базы в сравнении с ddl базами
Давайте на простой задаче ТС
Категории, мультикатегории, связка категорий с продуктами
В реаляционных это будет, nested sed, рекурсивные запросы, таблицы связки, foreign key, триггеры и т.д. Какие костыли вы положите на чашу весов Mongo?

ksa 15.02.2022 09:24

Vlasenko Fedor, я довольно давно работаю с ноэкюэльними БД...
И скажу тебе так.
Если ты не умеешь использовать возможности той или иной СУБД - так ты сам себе буратино.

Где ты и где монго? :D
Это все из серии "Ай Моська, знать она сильна, коль лает на слона". Скорее всего похоронят меня и тебя, а она продолжит жить. ;)

Мне нет смысла измерять чужие письки. Я не разрабатывал СУБДшки, я лишь их использовал в работе.
И использовал успешнее конкурентов, с которыми сталкивался.

Так же хочу заметить что замастырить всякую фигню можно на любой СУБД. Так же как и сделать вполне вменяемый софт, который будет работать годами и не доставлять проблем.

Т.е. не СУБД определяет софт. А софт использует то что есть в СУБД. Пофиг какой СУБД! :D
Так понятно?

Vlasenko Fedor 15.02.2022 09:48

Выбор СУБД является одной из важных составляющих при рассмотрении архитектуры проекта. Здесь нужно учитывать множество факторов.
Возможность бд покрыть потребности разработки, сократить время разработки, предоставить документацию разработки ...
Говорить пофиг на СУБД сравнивая реалиционные и не реляционные базы, это медленно пилить ножку стула на котором сидишь

ksa 15.02.2022 10:14

Цитата:

Сообщение от Vlasenko Fedor
Выбор СУБД является одной из важных составляющих при рассмотрении архитектуры проекта.

Я тебе про то, что не строй из себя могильщика СУБД. :D
Лучше развивай умение использовать любую СУБД без ущерба в качестве ПО. ;)

Кабы ты разработал свою СУБД, которая, по твоему мнению, затмит все остальные...
Тут конечно будут другие поводы подтрунить тебя. :D
Ну хоть какой-то уровень с СУБД будет... А так... Ну смешны все такие "похоронные" высказывания.

Щеки раздувать "при выборе СУБД для проекта" дело не хитрое... А вот собственно сделать беспроблемное ПО может уже далеко не всякий. ;)


Часовой пояс GMT +3, время: 22:40.