Laravel 在生产环境中“无法定位组件的类或视图”

新手上路,请多包涵

我在本地的 Mac 上开发。最新版本的大苏尔。

今天我通过 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 上部署它,我就会收到上面的错误,它“无法找到具有这些名称的类或视图”。

有人可以指导我如何解决这个问题,因为到目前为止我完全不知道并且尽管知道区分大小写可能是其他问题的问题,但我找不到任何实际的解决方案或方法来解决这个。

原文由 Borassign 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 343
1 个回答

我有同样的问题。感谢您的问题,我可以找到解决方法:D

就我而言,为了更好地组织,我在另一个文件夹中创建了一个组件:

 $ php artisan make:component Tutorial/channelName/Alert

所以它在以下目录中创建了视图组件:

views/components/tutorial/channel-name/alert.blade.php

现在,要调用您的组件,您可以这样做:

 <x-tutorial.channelName.alert />

差不多就是这样。

原文由 Pathros 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏