簡體   English   中英

如何在RJS中找到具有最舊的Updated_at列的對象?

[英]How do I find the object with the oldest updated_at column in RJS?

我正在嘗試在執行rjs時刪除具有最舊的update_at值的對象。

page.insert_html :top, :messages, :partial => @message
page[@message].visual_effect :grow
page[:message_form].reset
Message.old_messages.each do |m|
  page.remove(m.id)
end
page.delay(1) do 
  page.select('.message').last.visual_effect :fade
end

我現在正在那里使用.last,但是視圖中有一個periodicate_call_remote,它會不斷更新並運行上面的rjs。 該行:

page.select('.message').last.visual_effect :fade

似乎只執行第一次,因為在“ last”消息消失之后,不再有任何東西被識別為“ last”,因此我確定而不是調用.last,我可以找到具有最舊的update_at時間戳記的對象並將其刪除代替。 我在想我可能無法使用page.select進行此操作,因為它僅調用css元素。 因此,我可能無法訪問消息模型中的updated_at值。 有人對如何用rjs刪除最舊的消息有建議嗎? 創建新消息后,消息已在模型中自動刪除。 但是我希望它們在RJS刷新元素時自動消失。

您的解決方案就像刪除褪色的元素一樣簡單。

我的猜測是,淡入淡出的視覺效果會隱藏該元素,但不會將其從DOM中刪除,因此最終發生的事情是您將繼續淡化相同的元素,而該元素顯然無能為力。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM