Я совершенно новичок в Mongo и RoR, пришёл из PHP-фона.
Я только что изучал этот урок о моделировании данных http://www.mongodb.org/display/DOCS/MongoDB+Data+Modeling+and+Rails
и был поражен вопросомпочему в руководстве рекомендуется хранить голоса в поле и обновлять это поле как
db.stories.update({_id: story_id, voters: {'$ne': user_id}},
{'$inc': {votes: 1}, '$push': {voters: user_id}});
вместо
db.stories.update({_id: story_id, voters: {'$ne': user_id}},
{'$push': {voters: user_id}});
, а затем подсчитывать
Story.voters.count
, чтобы получить количество пользователей, у которых естьПроголосовал?
Я знаю, что это учебное пособие, но это не самый эффективный способ управления данными.