Масштабируемая система голосования с MongoDB - PullRequest
2 голосов
/ 07 января 2012

В этой статье очень четко объясняется, как реализовать систему голосования с MongoDB и как ограничить один голос на пользователя и на объект.

У меня есть одно дополнительное требование.Мне нужно, чтобы голоса заданного пользователя были видны для отображаемых объектов.Например, если я показываю 20 твитов, и пользователь проголосовал за 3 из этих твитов, я хочу, чтобы эти голоса были видны.(Например, используя зеленую стрелку вверх.)

Одним из решений является отправка клиенту для каждого вопроса набора избирателей.Другое решение состоит в том, чтобы отправить клиенту набор голосов, которые он отдал.Я не вижу ни одного решения как масштабируемого.Есть предложения?

Ответы [ 2 ]

1 голос
/ 09 января 2012

Это то, что вы бы сделали на стороне клиента.

Когда у вас есть объект, который содержит число голосов и массив избирателей, вы можете проверить, находится ли идентификатор текущего пользователя в массиве избирателей, покаВы перебираете множество (истории, твиты, что у вас есть)

Имеет ли это смысл?

0 голосов
/ 07 января 2012

Не полный ответ, а ссылка на хорошую библиотеку для голосования (быстро !!!) для ruby ​​/ mongoid.Должно быть легко переносимым на node.js, возможно, mongoose.

https://github.com/vinova/voteable_mongo

Мне нужно что-то подобное в конце концов, возможно, мы должны поболтать (я martin_sunset на node.js на freenode)

...