【发布时间】:2017-07-27 01:46:02
【问题描述】:
截至目前,我已将 Laravel 运行环境更新为最新版本。回到 Laravel 4.*,我能够执行以下操作:
$this->layout->content = View::Make('users.login');
但现在看来,它失败了。我浏览了很多帖子,尝试了所有看似合理的方法,但我想出的绝对没有适合我的情况。可以在这篇文章的底部找到尝试努力的链接。下面是我要开始工作的代码。
我收到的错误范围来自“找不到类 'App\Http\Controllers\View'” - 当我将 use View 添加到控制器时解决了这个问题,但这会导致另一个错误。当我添加使用视图时,我收到的另一个错误是“尝试分配非对象的属性”;少量。
基本思路是这样的:
我有两个视图,一个是基本页面布局 (layouts.main),另一个包含我希望嵌入到主布局中的用户登录 (user.login)。它们都是刀片格式文件,如果我尝试这样做,它们都相互独立加载,我根本无法将这两个文件嵌套在控制器下。我正在尝试这样做,以便主文件可以是这样,并且只有此内容部分在页面视图之间更改。
控制器功能:
public function getLogin() {
$this->layout->content = View::Make('users.login');
}
刀片文件部分:
<div class="content roundBorder wrapper">
@yield($content)
</div>
尝试的解决方案: 由于弃用(?),任何使用 View::make 的东西似乎都失败了 前任。 https://laravel.io/forum/03-19-2014-simply-loading-multiple-views
尝试Laravel 4: Nest view inside layout with data,但使用
return $layout->nest('content','user.login');
每次都失败。
Laravel define default layout from controller in good way 不起作用,所以我认为它也已被弃用。
How to include a sub-view in Blade templates? 不起作用,因为我正在寻找即时执行此操作
https://laracasts.com/discuss/channels/general-discussion/laravel-5-this-layout-content-not-working?page=1 对我不起作用,当我尝试以下操作时:
$content = view('user.login');
return view($this->layout, ['content' => $content]);
【问题讨论】: