Laravel 11 OpenAdmin 在创建控制器时给出错误方法 Illuminate\Database\MySqlConnection::isDoctrineAvailable 不存在

问题描述 投票:0回答:1

我在 laravel 11 中创建了一个新项目,首先在安装 OpenAdmin 时收到错误。它在 doctrine/dbal 版本 上给出错误。然后我观看了 YouTube 视频,他们首先删除了 composer.lock 文件,然后安装了 OpenAdmin。我也做了同样的事情,它就安装好了。但现在我尝试使用命令和辅助脚手架创建一个控制器,但它给出了一个错误。

php artisan admin:controller \App\Models\User

错误方法调用异常

方法 Illuminate\Database\MySqlConnection::isDoctrineAvailable 确实 不存在。

在 供应商\laravel ramework\src\Illuminate\Macroable\Traits\Macroable.php:112 公共函数 __call($方法, $参数) { if (!static::hasMacro($method)) { 抛出新的 BadMethodCallException(sprintf( '方法 %s::%s 不存在。', static::class, $method )); }

i 错误的方法调用:您的意思是 照亮\Database\MySqlConnection::availableAt() ?

1
供应商\open-admin-org\open-admin\src\Console\ResourceGenerator.php:216 照亮\数据库\连接::__call("isDoctrineAvailable", [])

2
供应商\open-admin-org\open-admin\src\Console\ResourceGenerator.php:186 OpenAdmin\Admin\Console\ResourceGenerator::getTableColumns()

还附上了错误图像

我已经检查了它创建模型、迁移、menuItem 和其他所有内容的所有内容,但它没有创建控制器。我不想手动创建控制器。

laravel controller
1个回答
0
投票

要在 Laravel 11 中使用 OpenAdmin,您必须替换该包的一个文件:

src/Console/ResourceGenerator.php
您可以从 OpenAdmin 官方 github 存储库中找到它,但在主分支中找不到,但请检查开发分支。

Fix ResourceGenerator for laravel 11

只需将 https://github.com/open-admin-org/open-admin/blob/develop/src/Console/ResourceGenerator.php 文件替换为您的 OpenAdmin 主 openadmin 包文件,然后资源生成器就可以工作顺利。

© www.soinside.com 2019 - 2024. All rights reserved.