Dmitry
Ищу простое решение и самое оптимальное
Anonymous
Обязательно напиши если найдешь решение. Буду рад варианту проще
Dmitry
Я пока остановился на том, что храню списки с parent id как привел на схеме, но дерево строю на сервере за два запроса: получаю список файлов и список папок. Потом строю дерево папок из списка, но...чет пока не хватает мозгов туда файлы разложить...думаю тоже попробую осилить. Но я почему спросил. У одной группе чел рекомендует хранить две сущности в одной коллекции...и из нее строить дерево...
Dmitry
Поэтому я запутался в корень
Dmitry
Как лучше сделать эту задачу
Dmitry
Строить дерево из одной коллекции проще, чем из двух, но как правильно во в чём вопрос
Kons
Не тот чат.
Dmitry
NoSQL в помощь
Вот подскажи как мне в монго хранить
Михаил Макарычев
Вот подскажи как мне в монго хранить
Яндекс.Диск используют монгу для подобных целей, если не ошибаюсь. Вы не пробовали гуглить их митапы и конференции? Наверняка же где-то рассказывали, как они используют монгу
Denis
Документ директивы: проперти директивы(массив субдокументов директивы), проперти файлы(массив субдокументов файлов)
Denis
Если честно, то не знаю сколько степени вложенности такое выдержит
Denis
Но делать рекурсивно вроде бы как никто не мешает в монге
Denis
Вы же монгус используете?
Vint
Как по уму это хранить и строить дерево
Очень клёво заюзать для этих целей postgresql + with recursive. Это так, к сведению и кругозору.
OMG2SMART4YOU
Всем привет. .если можно дайте линк на канал для фронта
OMG2SMART4YOU
Или список каналов
Михаил Макарычев
Или список каналов
Вбей в гугле "экосистема разработчиков телеграм"
O.
Вот подскажи как мне в монго хранить
Если конкретно связей интересует и дальнейших выборок: http://mongoosejs.com/docs/populate.html
O.
Я правда суть проблемы не понял.
O.
Что конкретно не так? Что не получается?
O.
А то читаю одним глазком
Dmitry
Я просто думаю как лучше это сделать
Dmitry
Пока планирую перед тем как код писать
Denis
Да
https://docs.mongodb.com/manual/tutorial/model-tree-structures-with-materialized-paths/ Для монгуса есть как раз, для упрощения реализации этого паттерна: https://www.npmjs.com/package/mongoose-materialized
Anonymous
NoSQL в помощь
Почему ты решил что в nosql это проще?
zamir
привет, два вида пользователей, две strategy. как узнать какой пользователь авторизован в данный момент? ну например, что бы работать с его коллекцией
O.
При авторизации и так называемый ensureLoggedIn проверять id и роль пользователя
zamir
типа req.session.user1 ?
O.
Скажем что в принципе да.
O.
типа req.session.user1 ?
А внутри ID и Role
Denis
Почему ты решил что в nosql это проще?
Потому что она сама по себе древовидная, вариантов решений больше
zamir
А внутри ID и Role
а зачем нужен id ?
O.
const { _id, role } - ctx.session.user ...findOne({ _id, role })...
zamir
я просто на беке впервые пишу и не совсем знаком с этими тонкосттями
O.
а зачем нужен id ?
В сессиях так или иначе ID нужен.
zamir
ясно спасиб
O.
ясно спасиб
Да нет проблем! Вот ещё: https://stackoverflow.com/questions/26895219/verifying-roles-authentication-with-passport-js По ссылке выше отражена общая суть. Написано естественно не очень хорошо, но для понимания очень даже подойдёт.
zamir
ооо круто)
Denis
https://www.leonidvolkov.ru/p/222/
Denis
Кодить за нэвэльного
O.
Он вам не Хакатон
Михаил Макарычев
Всем привет. У меня немного оффтопный вопрос. Как определить, можно ли на определённом языке писать энтерпрайз? Почему говорят, что для этого больше подходит Java, C# и пр.? Почему для этого не подходит, например, Elixir и node.js? Я погуглил. Внятного ответа не нашёл
Smooth Operator
Субъективщина
Smooth Operator
Попробуй, узнаешь
Михаил Макарычев
Попробуй, узнаешь
Ну я щупал C#, например. Так и не понял, зачем на каждый чих отдельный класс создавать
Anton
Всем привет. У меня немного оффтопный вопрос. Как определить, можно ли на определённом языке писать энтерпрайз? Почему говорят, что для этого больше подходит Java, C# и пр.? Почему для этого не подходит, например, Elixir и node.js? Я погуглил. Внятного ответа не нашёл
Все дело в либах. Кровавый тырпрайз любит дорогие вендорские решения, а они зачастую ничего кроме жабы, шарпа и плюсов не поддерживают. Т.е. например, из ноды ты не смогешь нормально работат ьс продуктами IBM или Oracle
Yuriy
Все дело в либах. Кровавый тырпрайз любит дорогие вендорские решения, а они зачастую ничего кроме жабы, шарпа и плюсов не поддерживают. Т.е. например, из ноды ты не смогешь нормально работат ьс продуктами IBM или Oracle
Ммм, а какже node-oracle-connector версии 0.1.0, обновлявшийся последний раз полтора года назад? </sarcasm> Думаю, тут не только и не столько дело в языке, сколько в его экосистеме и наличии проверенных годами библиотек и тулчейна.
Yuriy
Ну так о том и речь.
Yuriy
Я потому тэг «сарказм» и закрыл )
Anton
понял уже, не заметил его прост
Anton
когда сталкиваешься с ИБМ - "обновлявшийся последний раз полтора года назад?" звучит уже нормас >__<
Konstantin
Правда перед употреблением его нужно собрать под свою версию оракла
Konstantin
Про db2, не знаю, это уж слишком узко
Anton
Под оракл есть нодовский родной драйвер и он активно мантейнится
у него тоже нет поддерки важных фич, тех что в моем придыдщем сообщении
Michail
подскажите как правильно сделать? если сделать просто статик сервер то он и на запросы картинок возвращает index.html app = express(); app.use(serveStatic(__dirname)); . а можно чтобы картинки все же отдельно показывал ?
Kons
Моё мнение таково, что используя проприетарные решения от известных вендоров, энтерпрайз пытается застраховать себя от случая, когда в новогоднюю ночь у него что-то сломается и он не сможет никуда обратится, чтобы это исправили. Т.е. вендор несёт ответственность за свой продукт. Кроме того, энтерпрайз ищет разработчиков, которых обучил сам вендор (сертификация).
Kons
Я вроде читал, что нода-таки была признана кем-то энтерпрайз-реди
Konstantin
PayPal)
Konstantin
Или ты о вендорах типа ms?
Kons
PayPal)
Да, и ещё волмарт
Anton
но нужно больше кода
Anton
показать, в смысле
Anton
чтобы понять, почему не работает
Anton
никто не подскажет, есть ли телеграм канал по Go, типа этого?
Anton
статик мидлвэр должен быть до этого раута
Anton
чтобы он сначала проверил в папке есть ли статичный ресурс, а потом уже, если не нашёл, отрендерил индекс
Anton
t.me/proGO
огонь, спасибо!
Михаил Макарычев