ai didi

php - 布局在 Laravel 4 中抛出 "Attempt to assign property of non-object"

转载 作者:可可西里 更新时间:2023-11-01 00:46:00 24 4
gpt4 key购买 nike

在 Layouts 文件夹中,我有一个名为 signup.blade.php 的布局

在我的 Controller 中,我像这样为其分配布局:

    protected $layout = 'layouts.signup';

在一个名为“signup”的单独文件夹中,我有一个名为“signup1.blade.php”的文件,它包含典型的 Blade 模板内容。这是一个名为“内容”的部分。在我的代码之前

@section('content')

最后有@stop。

我的 Controller 看起来像这样:

public function SignUp()
{
$this->layout->content = View::make('signup.signup1');
}

令人沮丧的是,这是在使用另一个布局和 Controller 。我已经仔细检查过它们是否相同,但这个不起作用。任何建议将不胜感激。谢谢。

最佳答案

所以,假设这个 Controller 扩展了 BaseController(它必须让 $layout 工作),code execution sets $this->layoutView::make($this->layout)

您的错误似乎表明 $this->layout 没有正确设置为 View 对象。

尝试运行它并查看 $this->layout 是否是一个对象/类,如果是,它是什么类。

public function SignUp()
{
echo gettype($this->layout);
echo get_class($this->layout);
}

知道什么 $this->layout 没有变成 View 对象意味着 setupLayout()方法要么未被调用,要么更有可能不是 View::make($this->layout) 的结果不是正确的 View (也许它由于某种原因默默地失败了)。

上述步骤有望为您提供线索,了解那里发生的事情。也许 layouts.signup 不是应用正在查找的布局?

你的路线是什么样的?

关于php - 布局在 Laravel 4 中抛出 "Attempt to assign property of non-object",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18678640/

24 4 0
文章推荐: ajax - 如何使用 Node.js 服务器接收 http 请求,然后将该请求传递给另一台服务器?
文章推荐: linux - 在 node.js 中拖尾命名管道
文章推荐: linux - 后台 Bash 脚本 : how to kill child processes
文章推荐: PHP IMAP 检索 To 地址中的所有收件人
可可西里
个人简介

我是一名优秀的程序员,十分优秀!

滴滴打车优惠券免费领取
滴滴打车优惠券
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com