【问题标题】:Notification in laravel when new record is inserted using ajax使用ajax插入新记录时laravel中的通知
【发布时间】:2026-01-06 02:20:05
【问题描述】:

我需要在添加新用户时显示通知。

这是我在视图中的代码:

<script>
var old_count = 0;

setInterval(function(){    
  $.ajax({
    url : "/shownotify",
    success : function(data){
        if (data > old_count) {
            alert('new record on i_case');
            old_count = data;
        }
    }
  });
},1000);

在路线中:

 Route::get('shownotify', ['uses' => 'DriverController@shownotify', 'as' => 'shownotify']);

在控制器中:

public function shownotify()
{
   return Move::count();
}

但我没有得到结果。有人可以帮忙吗?

【问题讨论】:

  • 你做了什么调试?检查浏览器的控制台和网络工具是否有错误,并报告您在此处找到的任何内容。 ajax 调用是否完成?如果有的话,它会返回什么?什么HTTP代码?服务器端有错误吗?你似乎根本没有调查过这个。用户会说“没有得到结果”,但你是程序员,所以你需要提供技术细节。显而易见的是,shownotify() 中没有 return 语句,但是如果您对响应进行了一些调试,您可能已经意识到了这一点。
  • shownotify 函数中,您不会返回任何内容
  • 错误“加载资源失败:服务器响应状态为 404(未找到)-shownotify”并且 jquery.min.js:4 GET localhost/shownotify()404(未找到)跨度>
  • a 404 表示服务器在您拥有的 URL 上找不到任何要执行或返回的内容。所以我猜你的路线可能是错误的。一旦你解决了这个问题,你就需要从 shownotify() 中返回一些数据
  • 是的,我知道了,我做错了,当我改变一些东西时。现在我已经将 shownotify() 替换为 shownotify,它有效!!!!!!。但是我如何在我的管理面板顶栏

标签: php ajax laravel-5


【解决方案1】:

你真的没有解释你正在尝试什么以及你的问题是什么:/

但我突然想到的一件事是,你没有从 shownotify() 方法返回任何东西,所以也许只返回 $row 变量是你需要的? :)

【讨论】:

  • 我刚刚返回了 $row 变量,但它在我的控制台中显示错误“加载资源失败:服务器响应状态为 404(未找到)”
  • 好吧,那么你的路线是错误的或者没有定义或者什么的。您是否尝试在浏览器中点击shownotify?这行得通吗?
  • 那我猜是你的 javascript 试图打错路线 :) 检查你的 chrome 开发工具中的网络分流
  • 现在它可以工作了(我犯了一个小错误,在 url 中添加了函数括号),但是我如何在我的管理面板顶部栏中显示。
  • 这与你原来的问题无关,新建一个。并花一些时间做一些测试并写一篇详细的帖子来解释你的问题。
最近更新 更多