Я пытаюсь получить лучшую логику за этим, прежде чем начинать писать код.Rails: Как обновить страницу с новыми сообщениями? через Ajax? Jquery?
У меня есть модель, которая собирает новые сообщения через фоновый процесс. (Таким образом, база данных обновляется каждые 2-3 минуты с любыми сообщениями).
Когда пользователь приходит в свой почтовый ящик, они представлены со всеми их текущими сообщениями. Это легко для меня:
@user = User.find(params[:id])
@user.messages
И я покажу текущие сообщения пользователя на странице.
Однако, если сообщение приходит, когда пользователь находится на этой странице (или на любой другой странице), как я могу обновить страницу с новым сообщением, не требуя полного обновления страницы. Я знаю, что это можно сделать через ajax (периодически_call_remote?). Но я бы хотел, чтобы только подсветка (fade/blink) только новое сообщение, которое входит.
Попытка обернуть меня впереди вокруг этого. Моим текущим решением является использование частичного для почтового ящика, которое вызывает еще одну часть сообщений входящих сообщений. Но как я могу периодически обновлять страницу с помощью «НОВЫХ» сообщений? Скажите, чтобы проверить каждые 2 минуты или около того.
Идеи?
Это интересно Джон, я намеренно поставил временную метку на записи, чтобы я мог найти все «новые сообщения». (Сообщения с меткой времени больше последнего вызова «обновления»). Однако, как бы я хотел добавить уникальную идентификацию, если каждый идентификатор будет другим? (Поскольку каждое «новое» сообщение может иметь другую временную метку). Не уверен, что это имеет смысл ... –
, а затем обновляется страница ... им думается, может быть, для этого будет возможно периодически_call_remote. Просто задумываясь здесь ... –
Ага! просто перечитал мой комментарий, сначала не последовал за вами, но я думаю, что у меня есть идея. Я добавлю временную метку ко всем идентификаторам * новых * сообщений, а затем выделим их таким образом. Посмотрим, если это сработает. –