我正在使用Codeigniter
,我的控制器中有两个函数。问题是我的视图文件加载速度很慢。当我弄清楚时,我开始知道在我的函数中,在加载视图页面之前有一个函数调用,例如
$this->_review_and_give_point_for_alert($alertDetail, $alertID, $alertUserId, $email, $alert_url, $statusImage, $userStatus);
这会导致加载视图页面变慢。查看文件只是一条"谢谢"消息。
我没有通过这个应该显示在视图文件上的函数获取任何数据。事实上,它正在更新数据库中的数据。所以问题是我如何加载我的视图文件,即快速感谢您的消息。任何帮助都将是非常可观的。
@Hamed,这不会击败更新记录后呈现视图的目的吗?
如果更新由于某种原因失败怎么办?
他可以将数据"插入"到临时表中(比完全更新更快(,向用户显示"谢谢"视图,并在当天晚些时候以他选择的时间间隔批量更新主表,即每 6 小时一次,就像计划脚本一样,当每条记录在"主表"中更新时,临时表中的记录被删除。
所有这些都在后台进行,而不会延迟用户体验。
- $this->_save_in_temp_table($alertDetail, $alertID, $alertUserId, $email, $alert_url, $statusImage, $userStatus(;
- 向用户显示"谢谢"视图。
- 自动/手动运行调度程序以更新上述 (1( 中的数据。成功更新后从"临时表"中删除数据。
- 这样,用户就不会等待很长时间,因为插入比更新更快。
假设控制器中有两个功能。
function loadPage(){
和
function showSuccesful(){
向客户显示视图的loadPage()
非常慢。 在您的视图文件中.html您可以在控制器中Ajax function
呼叫showSuccesful
说页面已加载!!成功。
您可以在脚本标记中调用$(document).ready()
中的Ajax function
。
希望你能理解。