试图在中间件Laravel中获取非对象的属性

时间:2016-11-07 10:13:26

标签: php laravel laravel-5.3 laravel-middleware

我在中间件中遇到一个奇怪的问题,return $next($request);行发出Trying to get a property of a non object错误,但只在我的生产服务器上,我无法在本地重新创建此问题。

<?php

namespace App\Http\Middleware;

use Closure;

class NotSubscribed
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        if (isSubscribed($request->user()) || getOrganisation()->skip_plan) {
                flashError('You already have a subscription to Tradesoft.');
                return redirect(url(''));
        }
        return $next($request);
    }
}

2 个答案:

答案 0 :(得分:0)

事实证明错误信息误导了问题实际上是在视图中。

答案 1 :(得分:0)

这似乎是一个双重错误,我不确定为什么关闭在中间件中打破。对我来说,问题也在于一个观点。如果查看详细的堆栈跟踪,您(希望)会在视图文件中看到另一个ErrorException。我为已处理的视图文件(storage / framework / views / bdd1ab3cd9b17fa33f375bec31b7efe831671aac.php:12)提供了行号。