【发布时间】:2021-03-16 08:03:24
【问题描述】:
我在本地的 Mac 上开发。最新版本的 Big Sur。
今天我通过 Forge 通过 Ubuntu 服务器将我的应用程序部署到生产环境,遇到了一个我以前从未见过的错误,并且无法在线找到答案。我可以看到很多人在抱怨它,但是任何人在其他答案上所说的都是链接到没有解决方案甚至没有真正解释的问题,所以这就是我问一个新问题的原因。
确切的错误是这样的;
Unable to locate a class or view for component [layouts.base]. (View: /home/forge/default/releases/20201204084441/resources/views/layouts/app.blade.php)
在我的应用中,我有;
app\View\Components\Layouts\App.php
看起来像这样;
<?php
namespace App\View\Components\Layouts;
use Illuminate\View\Component;
class App extends Component
{
public function render()
{
return view('layouts.app');
}
}
那我也有;
resources\views\layouts\app.blade.php
<x-layouts.base>
<!-- contents -->
</x-layouts.base>
(base 也差不多)
在 Mac 上完美运行。一旦我在 Ubuntu 上部署它,我就会收到上面的错误,即“无法找到具有这些名称的类或视图”。
有人可以指导我如何解决这个问题,因为到目前为止我完全不知道,尽管知道区分大小写可能是其他问题的问题,但我找不到任何实际的解决方案或解决这个问题的方法。
【问题讨论】:
-
试试
composer dump-autoload -
@KamleshPaul 感谢您的建议,但同样的问题/错误。不过,也可以通过在我的服务器上运行
php artisan view:cache来触发相同的错误。但如果我在我的 Mac 上运行相同的命令,它会成功完成。 -
检查你的 ubuntu
views/layouts/app.blade.php这是礼物吗? -
@KamleshPaul 是的,它存在。
-
在同一文件夹
/home/forge/default/releases/20201204084441?
标签: php laravel laravel-blade laravel-livewire