错误:
SQLSTATE [22P02]:文本表示无效:7错误:输入无效 整数的语法:" dismissnotification" (SQL:select * from" users" 在哪里" id" = dismissnotification)
在我的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
功能&#34;解雇&#34;在我的NotificationController上是空的,但错误仍然存在。我不知道原始错误中的select * from "users"
来自哪里。
public function dismiss($notificationid) {
//
}
我错过了一些明显的东西吗?如果我的函数中根本没有代码并且路由显然是正确的,那么可能导致此错误的原因是什么?
答案 0 :(得分:2)
SQL查询显示Laravel在路由上调用的方法与您预期的不同。
select * from "users" where "id" = dismissnotification
该查询正在尝试查找ID匹配&#39; dismissnotification&#39;的用户,因此它看起来像是在点击UsersController @ show或UsersController @ edit或者甚至是UsersController @ 222222225在您为/ user定义的其他路由上。
由于URL :: route()按预期呈现路径,因此您的问题可能就是您定义路由的顺序;但是,如果没有看到所有/用户路线,并且按照您定义它们的顺序,我就不能更具体了。