Php Throw Not found,而不是尝试获取Laravel中非对象的属性
我有应用程序URLPhp Throw Not found,而不是尝试获取Laravel中非对象的属性,php,laravel,Php,Laravel,我有应用程序URL127.0.0.1:8000。不管我在这个URL后面放了什么,Laravel都会返回这个错误。例如:127.0.01:8000/asfs或 正在尝试获取非对象的属性 我想要的是,Laravel应该返回未找到错误,而不是尝试获取…的属性。还有更好的办法吗 我的路线 Route::get('/{url}', 'ViewController@view')->name('view')->where('url', '[\w\d\-]+(.*)'); Route::post('
127.0.0.1:8000
。不管我在这个URL后面放了什么,Laravel都会返回这个错误。例如:127.0.01:8000/asfs
或
正在尝试获取非对象的属性
我想要的是,Laravel应该返回未找到错误,而不是尝试获取…的属性。还有更好的办法吗
我的路线
Route::get('/{url}', 'ViewController@view')->name('view')->where('url', '[\w\d\-]+(.*)');
Route::post('/login', 'Admin\AuthsController@login');
查看
<p>
<img alt="Home" src="{{ asset('public/logo.png')}}"/>
</p>
尝试检索数据库中不可用的数据时,通常会出现此错误。确保要检索的任何数据(无论是图片还是任何数据)都已持久保存在数据库中。然后再次尝试检索数据 你可以试试这个
if($pr->ul){
返回视图('show',compact('pr');
}否则{
返回视图('errors.404');
}
post more code,route指向什么?@SapneshNaik我更新了这个问题。为什么它显示试图获取属性…
对于像127.0.0.1:8000/asdf
这样的随机链接?我能看看你的ViewcontrollerI我知道route::get('/{url}','ViewController@view')
正在抛出试图获取随机链接的属性…
。如何将其他变量限制在此路径上?此Pr是什么?出现此错误是因为$p的$url参数尚未在数据库中注册。检查以确保安全。我认为你需要写一个条件陈述。如果url为null或不是数据库中的url,则重定向到404页面。Pr是一个模型<代码>$p->url在数据库中具有值页面url
。我只想在127.0.0.1:8000/页面url
上允许页面url
。若数据库中并没有值,我将如何检查并重定向到404?
public function view($url)
{
$pr = Pr::where('url', $url)->first();
return view ('show', compact('pr'));
}