我有一个网站,在加载一系列帖子后会显示, 这些是通过控制器发送到页面的以下返回:
return View::make('stream')->with($this->postStream());
postStream只是我所有的postModel的获取(eloquent)
现在当页面加载时,我很乐意附加自你加载页面后所做的所有新帖子而不刷新,现在这将发生在AJAX上(我不认为这可以做到其他)
所以我写了以下内容:
setInterval(function() {
$.ajax({
url: 'stream',
type: 'post',
cache: false,
success: function(data) {
stream = data;
},
error: function() {
alert('Something went to wrong.Please Try again later...');
}
})
console.table(stream.posts);
;},1000 * 60); // every minute
这可以获得适量的帖子,但我无法获取帖子的内容。执行console.table(stream.posts);
+-----------+--------------+------------------+------------+
| (index) | timestamps | incrementing | exists |
+-----------+--------------+------------------+------------+
| 0 | true | true | true |
| 1 | true | true | true |
| 2 | true | true | true |
+-----------+--------------+------------------+------------+
我怎样才能从我的数据中获取这些数据?
答案 0 :(得分:1)
如果您正在使用Ajax,则必须使用return Response :: json。
你可以尝试
控制器:
if (Request::ajax()) {
return Response::json(array('id' => $id,...));
}
return View::make('stream')->with($this->postStream());
视图:
console.log(data);