问题标签 [laravel-lighthouse]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
185 浏览

laravel - 服务器上的cors问题,但不是本地主机上的问题

我正在使用 lighthouse-php 作为 graphQL 包的 laravel 7 项目。

在 localhost 上一切正常,但在 Ubuntu 18.04 ec2 nginx 服务器上,它给了我 CORS 问题。

请注意:- 1)客户端和服务器都在http上。

2) 我的 cors.php

0 投票
0 回答
439 浏览

pusher - Lighthouse Graphql 订阅身份验证返回 403(subscriberByChannel() 返回空)

我正在尝试使用 Lighthouse 验证订阅(文档

但是当我运行订阅查询时,我得到了这个

所以我决定顺其自然。

这是失败的地方:

走进$this->storage->subscriberByRequest()去,我得到

有人可以帮忙吗?

我错过了什么?

我的配置:

0 投票
1 回答
2562 浏览

php - 如何在 lighthouse graphql laravel 中获取自定义指令参数

我的问题是关于自定义指令 https://lighthouse-php.com/4.11/the-basics/directives.html#definition

我的架构是:

在 lighthouse.php 的配置中,我已经有了

指令启用。

我在 \App\GraphQL\Directives\appendDirective 将指令定义为

如何从我的指令中获取键“text”的值并附加到 $result [@append(text: ", please.")]。$args 是一个空数组(应该是因为我确实进行了参数化查询 [sayFriendly] )

0 投票
0 回答
720 浏览

php - Lighthouse php laravel - 枚举和分页器不起作用

抱歉,我对 graphQL 和 lighthouse 还很陌生。我不确定这是否是一个错误,或者我是否错过了文档中的某些内容。我使用了默认的分页器解析器并且查询工作正常。但是我需要添加一些参数,所以按照文档构建我自己的...构建器。我的两个字段具有自定义类型。使用默认分页器时没有问题,但是使用我的自定义构建器时,我会收到这样的错误

我认为这与使用常规 DB Builder 而不是雄辩的 DB Builder 有关,但分页器需要常规 DB Builder。

架构

应用\查看请求读取

ViewingRequestEnum (IncEnum Extends BenSampo\Enum\Enum) 如灯塔文档中所述。

这是通过 GraphQlServiceProvider 注册的。

输出/日志

点击展开

环境

灯塔版本:4.11.0 Laravel 版本:7.5.1

0 投票
2 回答
695 浏览

php - Lightouse PHP Graphql - 如何创建关系?

我正在努力理解如何通过灯塔建立关系。假设我有一个Post模型。在我的,我有:belongsToUserschema.graphql

我在数据库中的 Post 对象有一个外键列user_id

当我运行查询时:

我收到一个错误:Field 'user_id' doesn't have a default value

我觉得我做错了什么,这个突变没有更新关系的正确列,有人可以指出我可能做错了什么吗?(如果我在数据库中使用默认值使列可以为空,它会被插入,但关系当然是不正确的。我还可以调整 graphql 模式以使用user_id: Int它确实有效但感觉做事的方式是错误的。)

一切都通过 Eloquent 正常工作,并且 graphql 查询正常工作,正确拉入相关对象。

注意:根据文档,我在模型中定义了关系的返回类:

以及相关的迁移:

0 投票
1 回答
327 浏览

laravel - 如何为 Laravel Lighthouse 中的突变定义多态的一对多关系?

所以我一直在这个问题上撞墙,到目前为止我还没有找到解决方案。

我用最新的 Lighthouse(4.12) 创建了一个新鲜的、脆弱的 Laravel 项目,当我尝试按照文档进行操作时,我迷失了方向。

因此,根据文档,我制作了以下架构:

有以下课程:

后模型

图像模型

和迁移:

并使用提供的 GraphQL 操场,我希望以下突变:

将返回已创建帖子的连接/同步图像,但仅返回帖子。

但是,如果我手动设置关系并对其进行查询,则一切正常。

提前致谢!

0 投票
1 回答
621 浏览

laravel - Laravel Lighthouse 嵌套突变不起作用

我正在使用 Laravel Lighthouse 为我的新应用程序创建 GraphQL API,现在 Nested Belongs to and Belongs to Many 不适用于创建和更新方法,在数据透视表中,没有添加任何内容,我收到以下错误:

产品迁移:

标签迁移:

枢轴迁移:

产品型号:

标签型号:

产品架构

有谁知道是什么问题?

0 投票
1 回答
1294 浏览

php - Laravel Lighthouse - 如何更新多个模型

我正在尝试使用指令更新多个模型,但当前的 @update 指令不支持多个 id。我基本上想要@delete 指令(您可以在其中使用ID列表)。更新多个模型。我猜我可以创建一个自定义指令,但是那里有很多我无法理解的代码。我试图阅读文档以了解如何创建自定义指令,但我无法让它工作。

所以 DeleteDirective.php 得到了这个:

我基本上想要这个(对于多个ID):

通过定义这样的突变查询:

并做这样的查询:

有人知道我会怎么做吗?或者可以指出我正确的方向?

0 投票
1 回答
217 浏览

laravel-lighthouse - 如何使用 Laravel 策略过滤来自 GraphQL 的列表响应?

我想根据模型策略中的视图方法过滤(不阻止访问)从我的 GraphQL API 返回的列表字段。

我已经编写了下面的指令,我已将其添加到我的架构中的字段中。

我有两个问题:

  1. 这不是实现我想要的结果的最佳方式,因为我必须注释我的模式中获取关系的每个字段。有一个更好的方法吗?

  2. 我在下面的解决方案有一个不起作用的边缘情况。返回过滤后的集合时,它不会加载架构中请求的对象上的嵌套字段。理想情况下,这将是递归的,对集合中的所有项目及其所有子字段使用相同的解析器。我怎样才能使这项工作?

0 投票
1 回答
277 浏览

laravel - 如何使用 Lighthouse 在 GraphQL 上获取相同模型的子对象?

我有一个模型调用任务,它可以依赖于另一个任务。所以我们有一个父任务和一个子任务,两个具有相同模型的对象。

所以我写了这个方案:

当我检查我的呼叫任务是否为空时,我已经用修补程序进行了测试,并且我的关系运行良好。知道如何解决吗?