当我生成我的观点时,我会从twitter中检索一条推文列表:
# Print tweets from list_id
<% @twitter_client.list_timeline(list_id).each do |tweet| %>
<%= tweet.text %>
<br />
<% end %>
此结果为静态,您只会获得此列表的最后20条推文。但我想让它每分钟自动刷新一次。如何在不刷新整个页面的情况下重新调用它?
我考虑过Ajax,但是这是一个由rails生成的视图,所以Ajax如何只召回这个特定的函数?
感谢您的建议
答案 0 :(得分:2)
Ajax通常会发出请求,然后使用结果更新页面的部分。它可以向您的rails应用程序发出请求,该应用程序可以依次向twitter发出请求,获取一些数据,生成一大块html,然后将其作为对ajax查询的响应的一部分发回。
所以,它就像这样
浏览器javascript
Rails服务器:
(实际上,控制器使用该数据来构建一块html使用该部分,然后将其发送回ajax请求(耐心地等待它),告诉请求&#34;取这个部分文本并使用它来替换id为#34; twitter_feed&#34;的div的内容。)
返回浏览器: