2015-05-23 2 views
-1

Я следую руководству Райана в опросе комментариев и работает отлично, но при опросе данных, которые он использовал id, чтобы получить только последние комментарии. Как я могу использовать метку время для опроса Последних комментариев толькоПолучить комментарии после отметки времени

Вот ссылка сути для модели контроллера, вида, CoffeeScript https://gist.github.com/silvercrow27/e08c0142af43aec39f02

+0

timestamps представляет что? 'created_at'? – shivam

+0

формат времени по умолчанию mongoids. 'updated_at' – nsantiago2710

+0

Что именно вы пытаетесь сделать здесь? Как выглядят ваши модели? Какие у вас есть вклады и какой результат вы ожидаете? –

ответ

2

для Mongoid вы хотите:

Post.where(:updated_at.gte => 1.hour.ago) 

это вернет вам сообщения обновляются в течение последнего часа.

+0

хорошо, что здорово. плохо попробуй это – nsantiago2710

+0

получит ли это все посты? – nsantiago2710

+0

Я попробовал ваш ответ некоторое время назад, но если я тот, кто публикует. он будет дублировать контент. – nsantiago2710

0

Вы можете попробовать что-то вроде этого:

timestamp = 1432360568 
Model.where(:updated_at => Time.at(timestamp)) 
# Model Load (20.4ms) SELECT `models`.* FROM `models` WHERE `models`.`updated_at` = '2015-05-23 05:56:08' 

Если предположить, что комментарии принадлежит к сообщениям, и вы хотите получить все комментарии для определенного сообщения после заданной отметки времени. Это может быть сделано как:

Comment.where(:post_id => post.id).where("updated_at > ?", Time.at(timestamp)) 
+0

Мне нужны все комментарии не только для определенного документа, у которого есть отметка времени – nsantiago2710

+0

все комментарии на основе чего? Извините, что ваш вопрос непонятен. – shivam

+0

извините. все комментарии основаны на отметке времени. например, я вошел во время 2015-05-23 05:56:08. Мне нужно получить все комментарии после указанного времени. – nsantiago2710

0

Если вы имеете в виду created_at как метку времени, то вы можете использовать что-то вроде этого

post = Post.order("created_at").last 

, чтобы недавно созданный один

или

post = Post.order("updated_at").last 

для получения обновленной версии

+0

это получит всю почту, которая является плохой идеей. – nsantiago2710

+0

@heathcliff сколько сообщений вы хотите отобразить – Prabhakaran8737

+0

Мне нужно всего лишь получить последнее сообщение через опрос. например, я вошел во время 2015-05-23 05:56:08. Мне нужно получить все комментарии после указанного времени. – nsantiago2710

Смежные вопросы