laravel - artisan是否缓存:clear also remove lighthouse cache?

标签 laravel laravel-5 graphql laravel-lighthouse

我在生产中遇到此错误:

exception: "Nuwave\Lighthouse\Exceptions\DefinitionException" file: "/var/www/app/vendor/nuwave/lighthouse/src/Schema/TypeRegistry.php" line: 95 message: "Lighthouse failed while trying to load a type: CreateTicketInput↵↵Make sure the type is present in your schema definition.↵" trace: [,…]

有人建议清除 Lighthouse 缓存 here .

但我已经习惯使用 artisan cache:clear 清除 Laravel 缓存 所以我的问题是:artisan cache:clear 是否也会删除灯塔缓存?

最佳答案

理论上是的。在实践中,这取决于。

By default Lighthouse 使用默认的 Laravel 缓存驱动程序,因此 artisan cache:clear还应该间接清除 Lighthouse 缓存。

但是,如果您将 Lighthouse 配置为使用与 Laravel 使用的缓存驱动程序不同的缓存驱动程序,则它将无法工作。

长话短说:是的,如果您使用 Lighthouse 的默认缓存 artisan cache:clear确实清除 Lighthouse 缓存,但不依赖于此,请使用 artisan lighthouse:clear-cache确保现在和将来(以及任何配置)缓存被正确清除。


这是 very likely在 Lighthouse 的下一个版本中,缓存方法将发生变化,不再使用 Laravel 缓存,这使得 artisan cache:clear不再影响 Lighthouse 缓存,因此这是使用 artisan lighthouse:clear-cache 的另一个原因也是。

关于laravel - artisan是否缓存:clear also remove lighthouse cache?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67650492/

相关文章:

php - 我在这里使用什么 Laravel Eloquent 关系

php - Laravel - selectRaw( count(*) ) 返回为字符串而不是整数?

build - 在我的 Laravel 项目中使用语义 UI

php - Laravel 5.1 在 .env 文件中创建数组变量供全局使用

node.js - 如何部署 Apollo 客户端和 Node Express/Sequelize API?

php - 连接 POS 到电子商务 RESTFUL API

php - 类 App\Http\Controllers\UserController 不存在

javascript - Laravel 5.2 PHP 数组到 Javascript 变量

graphql - GraphQL 输入类型可以继承其他类型或接口(interface)吗?

c# - 创建 GraphQLHttpClient 时出现 GraphQLClient 错误 : IGraphQLWebsocketJsonSerializer