laravel - Laravel 6 无法从为 Laravel 5 发布的快速调整包中找到供应商类
问题描述
我正在尝试使用 Laravel 6.0 中的 Firebird 3.0,并且我正在关注https://firebirdsql.org/file/documentation/reference_manuals/fbdevgd-en/html/fbdevgd30-php-Laravel-crt-project.html其中包https: //github.com/sim1984/laravel-firebird建议。不幸的是,这个包是为 Laravel 5.7 设计的(或者它可能还没有在 composer 存储库中发布),这就是为什么我在尝试安装这个包时收到以下消息的原因:
[InvalidArgumentException]
Could not find a matching version of package sim1984/laravel-firebird. Check the package spelling, your version con
straint and that the package is available in a stability which matches your minimum-stability (dev).
所以,我有一个很好的想法来微调这个包,这就是为什么我把它分叉为https://github.com/alex153490/laravel-firebird,我在 composer.json 中更改了版本要求。我希望不要做其他工作来确保与 Laravel 6 的兼容性。之后我在我的 Laravel 项目的 composer.json 中添加了这个 git 存储库:
"repositories": [
{
"type": "package",
"package": {
"name": "alex153490/laravel-firebird",
"version": "master",
"source": {
"url": "https://github.com/alex153490/laravel-firebird.git",
"type": "git",
"reference": "master"
}
}
}
]
现在包安装好了。我在我的 Laravel 项目中创建了一个模型文件,并添加了导入
use Firebird\Eloquent\Model;
正如原始包装的原始描述所建议的那样。
但现在我开始收到错误
Symfony\Component\Debug\Exception\FatalThrowableError
Class 'Firebird\Eloquent\Model' not found
在尝试从我的项目的简单 rest API 控制器中调用此模型类时。
为什么找不到此类错误-软件包安装时没有错误,该软件包位于我项目的供应商文件夹中,一切似乎都正常。我已经检查了清单https://dev.to/dechamp/php---how-to-fix-class--not-found-error-1gp9中可能存在的问题,包括我为我的项目重新生成了自动加载文件,但没有帮助。
我做错了什么?为什么很难从供应商目录中的包中看到类?
ps 当我尝试为 Laravel 6 使用建议的 Laravel-Firebird 包时(https://packagist.org/packages/harrygulliford/laravel-firebird或https://github.com/KKSzymanowski/laravel-6-firebird)我总是得到最基本的select语句的异常事件:
Illuminate\Database\QueryException
SQLSTATE[HY000]: General error: -901 Dynamic SQL Error SQL error code = -901 feature is not supported (SQL: select * from "MY_TABLE")
在我看来,该软件包的作者刚刚提供了 Firebird 特定语法的数据(包括系统数据的语句),但他们忽略了 Firebird 可能缺少一些 Laravel 使用的功能。
解决方案
推荐阅读
- php - 在 WooCommerce 4 中设置购物车过期间隔
- c - 在 void* 中使用指针算法
- react-native - 如何在裸 react-native 应用程序中配置 react-native 导航?
- python - NoReverseMatch at / UpdateView
- python - 如何将多处理队列从 tkinter 类转移到工作类/函数
- windows - powershell 以管理员身份启动进程,我错过了什么
- php - 对象数组,按日期排序
- asp.net-core - 如何通过身份中的 id 获取用户名?
- django - 为什么在 django admin 中设置初始字段值不起作用?
- javascript - JS:replace不是替换信息