如何通过 Laravel 从 MySQL 数据库实时提取数据?
我更喜欢从 Blade View 调用代码。
我该如何实现这一点,或者正确的方法是什么?
我用来获取数据的代码行是:
Facility::where('aID',$this->id)->where('type',$type)->count();
最佳答案
我相信您知道,使用纯 PHP 您将无法做到这一点。
如果您愿意接受“实时”含义,每隔一秒左右定期进行一次,您可以通过使用 jQuery 进行重复的 ajax 调用来完成此操作,这将进行重新计数,并用新值替换当前计数。
这也意味着,您将无法从单个 Blade View 执行此操作,您将需要设置一个 Controller 才能执行 ajax 调用,该 Controller 将返回新的计数.
主 Blade View
<h1>
The current count is
<span id="mycount">
{{ Facility::where('aID',$this->id)->where('type',$type)->count(); }}
</span>
</h1>
jQuery
function getCount() {
$.ajax({
type: "GET",
url: "{{ route('route_for_new_data_here') }}"
})
.done(function( data ) {
$('#mycount').html(data);
setTimeout(getCount, 1000);
});
}
getCount();
Controller
在 Controller 中,您需要一些东西来处理它并发回计数
function getCount()
{
echo Facility::where('aID',$this->id)->where('type',$type)->count();
}
关于javascript - 从 Laravel 数据库中实时提取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20876327/