Laravel错误与404页面

我试图在我的网站上实现404页面的代码。 我在filters.php中使用此代码,但我也尝试在global.php中使用</ p>

  App :: missing(function($ exception)

:: make('404');
}
</ code> </ pre>

因此我收到此错误:</ p>

  Symfony \ Component \ Debug \ Exception \ FatalErrorException 
调用非对象上的成员函数getAction() </ pre>
</ div>

展开原文

原文

im trying to implement code of 404 page in my website. Im using this code in my filters.php but i also tried to use in global.php

App::missing(function($exception)
{
 return View::make('404');
}

as a result im getting this error:

Symfony \ Component \ Debug \ Exception \ FatalErrorException
Call to a member function getAction() on a non-object

douhan8581
douhan8581 可能重复[Laravel4-仅针对缺失页面的自定义404错误处理][1][1]:stackoverflow.com/questions/24185735/...
接近 6 年之前 回复

3个回答



我是另一种方式。

当引发404时会发生什么通常在app / start / global.php中声明</ p>

它应该是这样的:</ p>

 <  code> App :: error(function($ exception,$ code)
{
switch($ code)
{
case 403:
return Response :: view('errors.403',array() ,403);
情况404:
返回Response :: view('errors.404',array(),404);
}
}
</ code> </ pre>

这只是调用app / views / errors / 404.blade.php随时laravel引发了404或者你决定手动调用App :: abort(404); </ p>

Hope 它会有所帮助。</ p>
</ div>

展开原文

原文

i do it an aother way. What is going to happen when 404 is raised is normally declared in app/start/global.php

It should looks like that :

App::error(function($exception, $code)
{
    switch ($code)
    {
        case 403:
            return Response::view('errors.403', array(), 403);
        case 404:
            return Response::view('errors.404', array(), 404);
    }
}

This just called the app/views/errors/404.blade.php anytime laravel raised a 404 or if you decide to manually call App::abort(404);

Hope it helps.



我搜索了更多关于这个以及我如何理解它的问题来自nginx。 可能? 顺便说一句,它没有刀片模板,但我需要它。 所以需要找出如何解决它</ p>
</ div>

展开原文

原文

I googled more about this and how i understand it problem comes from nginx. could be? btw it is working without blade templating but i need it. so need to find out how to fix it



看起来像布局或404页面的视图或作曲家。 你有类似的东西:</ p>

  Route :: getCurrentRoute() - &gt; getAction()
</ code> </ pre>

或< / p>

  Route :: current() - &gt; getAction()
</ code> </ pre>

或者到目前为止我记得Route :: getCurrentRoute当404为null然后它解释你的错误... </ p>

我用来检查当前Route是否是Route的实例:</ p>

  $ currentRoute = \ Route :: getCurrentRoute(); 
if($ currentRoute instanceof Route){
//在这里做你想要的事情
$ currentRoute-&gt; getAction()// ...
}
</ code> </ pre>
</ div>

展开原文

原文

That look like in the views or composer of the layout or your 404 page. you have something like:

Route::getCurrentRoute()->getAction()

or

Route::current()->getAction()

Or as far I remember Route::getCurrentRoute when 404 would be null and then it explains your error...

I use to check if the current Route is instance of Route by:

$currentRoute = \Route::getCurrentRoute();
if ($currentRoute instanceof Route) {
    // Do What you want here
    $currentRoute->getAction()//...
}

doxzrb8721
doxzrb8721 你是对的我不知道为什么我有这个问题...
接近 6 年之前 回复
dqnek0079
dqnek0079 当然,路线是一条路线,为什么你要检查它
接近 6 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐