Ruby on rails 在Rails站点上显示Twitter提要(带有历史记录)的最佳方式
在Rails站点上,我想显示一个特定的Twitter提要,并对其进行分页,以便访问者可以查看以前的推文(根据需要可以追溯到最早) 我使用TwitterGem和Search方法实现了它,它有一个很好的分页方法,但是遇到了一个限制,Twitter只返回过去两周的法规。因此,在回顾了几页之后,它就不会再有了 我可以使用user_timeline方法,使用max_id,然后进行我自己的分页(将最后查看的项目的max_id传递回控制器以获取下一批) 或者,我可以有一个rake任务,它经常轮询Twitter提要(使用cron),并将tweet存储在DB中。该网站将从数据库提供这些服务,而不是查询Twitter 哪种方法是最好的或推荐的?我不喜欢将tweet存储在DB中,但这也解决了查询Twitter的延迟问题(尽管我可以使用片段缓存来克服这一问题,但我还不能让它与Ajax一起工作)Ruby on rails 在Rails站点上显示Twitter提要(带有历史记录)的最佳方式,ruby-on-rails,ruby,twitter,Ruby On Rails,Ruby,Twitter,在Rails站点上,我想显示一个特定的Twitter提要,并对其进行分页,以便访问者可以查看以前的推文(根据需要可以追溯到最早) 我使用TwitterGem和Search方法实现了它,它有一个很好的分页方法,但是遇到了一个限制,Twitter只返回过去两周的法规。因此,在回顾了几页之后,它就不会再有了 我可以使用user_timeline方法,使用max_id,然后进行我自己的分页(将最后查看的项目的max_id传递回控制器以获取下一批) 或者,我可以有一个rake任务,它经常轮询Twitter
谢谢你的建议。我想把推文存储在数据库中。
所以即使twitter离线,你也不会有长时间的加载问题。您只需依赖您的数据库,即可适当显示推文。
只有您的后台作业会失败,因为twitter不可用。但这并不是一个真正的问题。我会将推文存储在数据库中。
所以即使twitter离线,你也不会有长时间的加载问题。您只需依赖您的数据库,即可适当显示推文。
只有您的后台作业会失败,因为twitter不可用。但这并不是一个真正的问题。我在这里持相反的观点,出于一系列原因,将tweet存储在数据库中不是一个好主意
老实说,我不会让你的应用程序为tweets服务,而是在页面上安装一个“小部件”(jquery或类似的),一旦页面加载,它就会喜欢这些小部件,然后考虑在那里实现某种形式的分页。我在这里持相反的观点,出于一系列原因,将tweets存储在数据库中不是一个好主意
老实说,我不会让你的应用程序为tweets服务,而是在页面上有一个“小部件”(jquery或类似的),一旦页面加载,它就会喜欢这些小部件,然后在那里实现某种形式的分页。我们下载tweets并将其存储在本地数据库中。我最近写了一篇关于我们是如何做到这一点的博文:
然后,您可以使用will_paginate处理您的分页并返回到您想要的位置。我们下载推文并将其存储在本地数据库中。我最近写了一篇关于我们是如何做到这一点的博文:
然后,您可以使用will_paginate处理分页并返回到您想要的位置。我知道这是一篇老文章,但这种方法的问题是twitter的速率限制。如果你把它加载到服务器上,那么每小时150次的页面浏览量是难以置信的低,所以采用javascript方法可以让每个IP地址(站点访问者)点击150次Twitter的API。但是,对于每个可能使用相同类型小部件的站点,如果您在一个大型网络(如公司或大学)上,那么您有多个用户(如果不是数百个),所有用户都将计入相同的150个请求配额。不幸的是,没有完美/简单的解决方案。我知道这是一篇老文章,但这种方法的问题是twitter的费率限制。如果你把它加载到服务器上,那么每小时150次的页面浏览量是难以置信的低,所以采用javascript方法可以让每个IP地址(站点访问者)点击150次Twitter的API。但是,对于每个可能使用相同类型小部件的站点,如果您在一个大型网络(如公司或大学)上,那么您有多个用户(如果不是数百个),所有用户都将计入相同的150个请求配额。不幸的是,没有完美/简单的解决方案。