【发布时间】:2015-11-28 07:45:30
【问题描述】:
我正在从事一个大学项目,该项目基本上需要构建一个简单的新闻网站来从 Twitter 获取推文。我选择 Tweepy 作为我的 Python 库来完成这项任务。
为了实现这个新闻网站,我有一个名为“tweet_source”的表,用于存储 Twitter 用户名。 在名为“tweets.html”的视图中,我首先从“tweet_source”获取每个用户名并将其传递给 Tweepy Python 脚本(其中包含我的访问令牌等)
Tweepy 脚本将从 Twitter 获取数据,例如名字、推文、个人资料图片,并为每个用户生成 div。
一切运行良好,它确实生成了整齐的 div。 但是,我们的主要标准是有一个“刷新”按钮,它将使用 AJAX 从 Twitter 获取新推文。
就我而言 - 1. 重新运行 Python 脚本 2. 重新生成 div。
我尝试了一种使用默认 AJAX 方法的方法,在该方法中,我使用 {{ }} 之间的脚本创建了另一个视图并将其用作响应。但是,生成的 div 被弄乱了并且彼此重叠。
我遇到了另一种方法,它只涉及使用 jQuery 的 AJAX 方法刷新当前页面,因为这样 - 1. 脚本将重新运行 2. div 完全按照我想要的方式重新生成。
function refresh_tweets(){
$.ajax({
type:'post',
data:{},
url:'tweets.html',
dataType:'html',
success:function(response){
$('body').html(response);
}
});
}
现在,问题是脚本运行(我可以在我的 web2py 控制台上看到输出)但页面上没有创建 div,即;除了几个标题外,什么都没有显示。
注意:- 值得一提的是,我使用 Tweepy 脚本从 Twitter 获取的推文存储在数据库的另一个表中。 (项目指南要求我们这样做)。
为此,我在页面顶部添加了db.tweet_tweet.truncate(),以确保删除旧推文并添加新推文。
如果有人可以帮助我,我将不胜感激。 或者为这项任务提供更简单的解决方案。
如果需要,我很乐意分享“tweets.html”的代码。
谢谢, 阿琼
编辑:存储推文的“tweet_tweet”表不会变空。我现在刚刚对其进行了测试,假设我单击“刷新”,一条新的推文确实成功添加到表中,但又一次没有 div 也没有生成输出。
【问题讨论】: