错误:



在我的routes.php文件中:

Route::get('user/dismissnotification/{notificationid}',array('as' => 'dismissnotification', 'uses' => 'NotificationController@dismiss'));

我认为该路线的链接:
 <a href="{{ URL::route('dismissnotification',$notification->id)}}">  <i class="fa fa-times"></i> </a>

当我单击此链接时,页面将正确重定向到(例如):
http://mywebsite/user/dismissnotification/222222225

而且,NotificationController上的函数“dismiss”为空,但错误仍然存​​在。我不知道原始错误中的select * from "users"来自何处。
public function dismiss($notificationid) {
        //
}

我缺少明显的东西吗?如果我的函数中根本没有代码,并且路由显然正确,那么可能导致此错误的原因是什么?

最佳答案

SQL查询显示,Laravel在您的路由上调用的 Controller 方法与您期望的不同。

select * from "users" where "id" = dismissnotification

该查询正在尝试查找ID与“dismissnotification”匹配的用户,因此,看起来好像是在敲打UsersController @ show或UsersController @ edit甚至是UsersController @ 222222225之类的东西,具体取决于您为/user定义的其他路由。

由于URL::route()按预期方式呈现了路径,因此您的问题可能是定义路径的顺序;但是,在没有看到所有/user路由以及按照定义它们的顺序的情况下,我无法更具体地说明。

关于php - Laravel 5-SQLSTATE [22P02]-使用postgres的无效文本表示,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32322743/

10-12 12:43