@nodejs_ru

Страница 2720 из 2748
Cenator
20.10.2018
14:59:42
У тебя айдишники тех кто лайкнул же просто

rddlr
20.10.2018
15:00:15
да. и также у юзера есть список что он лайкнул

ну так че))

как правльно делать это в скл?

Google
rddlr
20.10.2018
15:08:19
500 комментов на странице, у комментов по 10000 лайков, 1000 юзеров на странице одновременно

как им показывать лайкнули ли они конкретный коммент или нет наиболее эффективно?

Alexey
20.10.2018
15:12:19
как им показывать лайкнули ли они конкретный коммент или нет наиболее эффективно?
я бы возращал комменты with признак is_liked для текущего юзера

что бы не разбирать это все на клиенте

rddlr
20.10.2018
15:13:19
т.е. ты предлагаешь рассчитывать статус на сервере для каждого юзера на каждый запрос для каждого коммента. ок. тогда мне получается надо перед тем как отдать юзеру данные пройтись циклом по 500 комментам

это то как у меня сейчас реализовано

rddlr
20.10.2018
15:14:45
в проде не будет этого, я описываю крайнюю ситуацию

rddlr
20.10.2018
15:15:48
ну естественно речь о юзере который запрашивает данные, о ком же еще? дял каждого запрашивающего данные юзера надо отдедьно вычислять

rddlr
20.10.2018
15:16:22
вот и получается, 500 комментов и 1000 юзеров одновременно

Google
Alexey
20.10.2018
15:16:59
вот и получается, 500 комментов и 1000 юзеров одновременно
1000 прямо в онлайне на данной странице одновременно?

а разве нет?
я считаю да

Cenator
20.10.2018
15:17:36
у меня так выглядит, vote это и есть лайк

Eugene
20.10.2018
15:18:13
?graphql?

Cenator
20.10.2018
15:18:25
?graphql?
prisma

rddlr
20.10.2018
15:18:57
Линк это что?

Cenator
20.10.2018
15:19:11
Это пост

rddlr
20.10.2018
15:19:11
типо коммент?

Cenator
20.10.2018
15:19:30
Комментов нет пока

rddlr
20.10.2018
15:19:56
т.е. ты для лайка создал отдельно "модель". а зачем?

почему в votes не хранить юзера напрямую?

ну и самое главное этот скрин не отвечает на вопрос как выстраивать статус лайнул или нет конркетный юзер

Cenator
20.10.2018
15:21:23
Ну ладно

rddlr
20.10.2018
15:22:04
что ну ладно? смысл создавать отдеьно для лайков есть или нет?

зачем их выносить в отдельную сущность?

Valdemar
20.10.2018
15:22:35
зачем их выносить в отдельную сущность?
если юзеру надо будет показать все его лайкнутые посты

rddlr
20.10.2018
15:23:00
если юзеру надо будет показать все его лайкнутые посты
и как нам это поможет? проще хранить этот список у юзера напрямую, не?

Google
rddlr
20.10.2018
15:23:12
чем запрашивать в Votes

Valdemar
20.10.2018
15:24:48
и как нам это поможет? проще хранить этот список у юзера напрямую, не?
не, мы будем хранить лайк в отдельной таблице, чтобы быстро показывать их для конкретного коммента и для конкретного юзера (comment_id, user_id)

rddlr
20.10.2018
15:25:48
но можно же хранить эт овсе напрямую в комменте и у юзера

Valdemar
20.10.2018
15:26:17
rddlr
20.10.2018
15:26:36
согласен

Eugene
20.10.2018
15:26:54
Так расширять удобнее же потом

rddlr
20.10.2018
15:27:38
ок. а что дальше. надо показать статус конкретного сообщение - лайкнуто оно или нет юзером. где и как вычислять в таком случае?

rddlr
20.10.2018
15:29:49
это то что у меня сейчас. но я представил картину: у комментов тысячя лайков и сотня комментов в одном запросе.

я же не буду каждый коммент отдельно запрашивать

Valdemar
20.10.2018
15:31:47
это то что у меня сейчас. но я представил картину: у комментов тысячя лайков и сотня комментов в одном запросе.
неважно сколько у коммента лайков, ты ведь проверяешь лайкнул ли его конкретный юзер, это будет быстро, если по частям лайки тянуть

rddlr
20.10.2018
15:32:42
я сейчас так ставлю статус tweets.map(tweet => { const liked = tweetLikes.some(like => { return like.toString() === tweet._id.toString() }) Object.assign(tweet, { liked }) return tweet }) есть сомнения в эффективности

т.е. я не храню в БД статус liked

Eugene
20.10.2018
15:33:23
._id , монго ??

rddlr
20.10.2018
15:33:38
да

Valdemar
20.10.2018
15:34:33
я про sql если что пишу) в монге не знаю как там это по производительности

rddlr
20.10.2018
15:34:45
так эт о не монга, это js

я это делаю перед ответом

Valdemar
20.10.2018
15:35:14
так is_liked в базе надо высчитывать при запросе

Google
rddlr
20.10.2018
15:35:29
хуясе, так можно в скл?

?

Valdemar
20.10.2018
15:35:56
хуясе, так можно в скл?
можно вообще всё)

Cenator
20.10.2018
15:36:02
?
Ты тренируешься или в прод пишешь?

rddlr
20.10.2018
15:36:11
пет проджект - и в прод

Mishell
20.10.2018
15:36:11
Существует async функция. В ней я сначала получаю инфу из баз данных с помощью await Потом начинаю бегать циклом for по данным Потом сохраняю данные массово, снова с помощью await То есть два await, а между ними цикл for. Второй await не будет вызван пока for не закончится?

Cenator
20.10.2018
15:36:52
пет проджект - и в прод
howtographql.com Пройди тутор, там и работа с базой через призму объясняется

rddlr
20.10.2018
15:36:56
Я запутался
что не понятно? монга вовзращает данные, я прохожусь по ним и добавлю флаг. что не ясно?

Grigorii
20.10.2018
15:37:22
что не понятно? монга вовзращает данные, я прохожусь по ним и добавлю флаг. что не ясно?
Я думал, что "так эт о не монга" - значит, что у тебя не монга

rddlr
20.10.2018
15:37:27
Mishell
20.10.2018
15:37:43
нет, если фор синхронный
Спасибо, обычный for который обрабатывает данные. Ещё вопрос. А асинхронный фор это как?

Grigorii
20.10.2018
15:37:58
Mishell
20.10.2018
15:38:10
А, тогда все в порядке)

Cenator
20.10.2018
15:38:49
да я избегаю этот графкуель...но попробую, спс
Избегать графкл и в то же время юзать монгу - это как избегать социум, живя в клетке с обезьянами

Google
Mishell
20.10.2018
15:38:50
Кстати, а функции высших порядков типа map, filter не затормозят вызов второго await, верно? Так же как и forEach

rddlr
20.10.2018
15:39:20
Избегать графкл и в то же время юзать монгу - это как избегать социум, живя в клетке с обезьянами
меня смущает количество зависимостей, что на клиент что на сервер

для монги мне надо 0 зависимостей на клиент и 1 зависимость на сервер

для графкуель мне надо 10 библиотек на клиент и 20 на сервер))

Cenator
20.10.2018
15:40:47
для графкуель мне надо 10 библиотек на клиент и 20 на сервер))
Бред пишешь, 1 зависимость на клиент - парсер схемы, на сервере немного больше но даже не 10

Вообще можно и не парсить а слать application/graphql с клиента

Kendr
20.10.2018
15:41:16
Grigorii
20.10.2018
15:41:54
rddlr
20.10.2018
15:41:56
sql тоже 1 зависимость)
да, постгра у меня уже в планах обяхательно

Бред пишешь, 1 зависимость на клиент - парсер схемы, на сервере немного больше но даже не 10
ну почему бред. вот сейчас глянул vue-apollo. и там штук 8 зависимостей

Cenator
20.10.2018
15:43:16
ну почему бред. вот сейчас глянул vue-apollo. и там штук 8 зависимостей
Аполло делает все за тебя, это не необходимый минимум чтобы начать работу

Eugene
20.10.2018
15:43:17
Тригерид ?

rddlr
20.10.2018
15:43:20
npm install --save vue-apollo graphql apollo-client apollo-link apollo-link-http apollo-cache-inmemory graphql-tag

это только на клиент

Alex
20.10.2018
16:15:33
подскажите плиз, как сделать так, чтобы функцию можно было вызывать не с помощью колбеком, а с помощью await exports.getActiveAccountsCount = function(cb) { process.nextTick(function() { var sql = "SELECT COUNT(*) FROM `accounts` WHERE `access_token` IS NOT NULL"; db.query(sql, function(err, rows) { if (err) return cb(err, null) var count = JSON.parse(JSON.stringify(rows[0])) return cb(err, count) }) }) }

Heisenberg
20.10.2018
16:18:38
подскажите, есть какие-то либы для валидации моделей, которые приходят в express с запросом?

например чтобы по адресу /login прилетала только модель типа {username: String, password: String}

express-validator норм подходит для такого?

Страница 2720 из 2748