Обновление объектов за последние 10 секунд из поиска ActiveRecord - PullRequest
0 голосов
/ 29 января 2009

Я бы хотел получить объекты, которые были обновлены за последние 10 секунд, из поиска ActiveRecord.

Я пытался сделать это

@chats = Chat.find(:all, :conditions => ["updated_at > ?", 10.seconds.ago] )

а также

@chats = Chat.find(:all, :conditions => ["updated_at > ?", Time.now-10.seconds] )

и даже

@chats = Chat.find(:all, :conditions => {:updated_at => 10.seconds.ago..0.seconds.ago}]

Но я все еще не могу заставить его работать: (

РЕДАКТИРОВАТЬ: я обновляю столбец из другого приложения, чтобы сохранить его в живых, и я просматриваю все строки, которые я поддерживал в течение последних 10 секунд, чтобы избавиться от мертвых чатов.

Ответы [ 2 ]

2 голосов
/ 29 января 2009

Вы уверены, что запрашиваете в правом столбце? Я думаю, что вам, возможно, придется взглянуть на отметку времени созданного времени Я не знаю ваше приложение, но я удивлен, что вы обновляете существующие чаты, а не просто вставляете новые.

Итак ... если мое предположение верно, это может быть то, что вы ищете:

@chats = Chat.find(:all, :conditions => ["created_at > ?", 10.seconds.ago] )

Если нет ... пожалуйста, предоставьте немного больше информации. Запрос должен работать так, как у вас, и я полагаю, что updated_at может не обновляться.

0 голосов
/ 30 января 2009

Проблема была в UTC-умолчанию Rails. Я изменил это на config.time_zone = 'Тихоокеанское время (США и Канада)' и теперь все работает нормально:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...