Laravel 5 使用 Request 时出现 500 内部错误

Laravel 5 500 internal error when using Request

您好!

我是 Laravel 的初学者。我想尝试一下,所以我使用 make:controller 制作了一个基本控制器并开始使用它的 index() 函数。我只是写了这个:

return "Hello - ".Request::ip()." - ".Input::get('id');

调用相关路由时出现 500 内部服务器错误

mysite.com/public/emails?id=1

如果我取出 Request::ip() 就可以了,显示 Hello - 1 没有任何问题。

路线:

Route::get('emails', 'EmailsController@index');

控制器开头的包含:

use App\Http\Requests;
use App\Http\Controllers\Controller;

use Illuminate\Http\Request;

use \Input;

我想知道两件事:

提前致谢!!

您必须像这样在 index 方法中传递一个 Request 对象:

public function index(Request $request)
{
    return $request->ip;
}

这是 Laravel 5 改变的方式。在 Laravel 4 中,您的代码应该可以工作。他们将其分开以使其更具可读性。

这更简洁,更符合 OOP 风格。如果你想让你的代码更面向对象(面向对象)那么使用这个。

而且我认为使用它是一种很好的做法,因为大多数 Laravel 5 开发人员都在使用这种风格。