问题 Laravel 4中Response :: view和View :: make之间的区别


我明白那个 Response::view 实际上最终打电话 View::make 作为过程的一部分,但为什么我会从控制器返回一个与另一个?

有人可以解释它们之间的输出差异是什么吗?


11225
2017-08-22 15:45


起源



答案:


它们都是一样的东西。

看着 代码 :

public static function view($view, $data = array(), $status = 200, array $headers = array()) {
    $app = Facade::getFacadeApplication();
    return static::make($app['view']->make($view, $data), $status, $headers);
}

我们可以看到 Response::view() 电话 View::make(),使用它来创建一个默认状态为200 OK且没有其他HTTP标头的响应。

你需要使用 Response::view() 过度 View::make() 当您需要返回非默认状态代码或其他标头时。

此外, 这个帖子 在Laravel.io上证实了这一点 Response::view() 只是一个捷径 Response::make(View::make()) 在最初的Laravel 4 beta提交后添加。


9
2017-08-22 15:56



因此,调用Response而不是View不会返回任何标头信息以及呈现的HTML View::make()?我知道他们最终会在浏览器中显示相同的信息,但在另一个界面中会有什么不同,比如命令行? - Lisa


答案:


它们都是一样的东西。

看着 代码 :

public static function view($view, $data = array(), $status = 200, array $headers = array()) {
    $app = Facade::getFacadeApplication();
    return static::make($app['view']->make($view, $data), $status, $headers);
}

我们可以看到 Response::view() 电话 View::make(),使用它来创建一个默认状态为200 OK且没有其他HTTP标头的响应。

你需要使用 Response::view() 过度 View::make() 当您需要返回非默认状态代码或其他标头时。

此外, 这个帖子 在Laravel.io上证实了这一点 Response::view() 只是一个捷径 Response::make(View::make()) 在最初的Laravel 4 beta提交后添加。


9
2017-08-22 15:56



因此,调用Response而不是View不会返回任何标头信息以及呈现的HTML View::make()?我知道他们最终会在浏览器中显示相同的信息,但在另一个界面中会有什么不同,比如命令行? - Lisa