Ger*_*mit 1 laravel graphql laravel-lighthouse
我正在尝试在 Lighthouse 3.7/Laravel 5.8 中设置模式我想要实现的是:用户应该能够创建 Clists。User 和 Clist 之间存在一对多关系。我正在尝试实现此处描述的嵌套突变。
我已经实现了“查询”部分并且工作正常。但是当我在 GraphQL Playground 中测试 createClist 突变时,出现以下错误:
"debugMessage": "Array to string conversion",
"message": "Internal server error",
"extensions": {
"category": "internal"
},
...
Run Code Online (Sandbox Code Playgroud)
我不明白我做错了什么。
这是我的代码:
type Mutation {
createClist(input: CreateClistInput! @spread): Clist @create
}
input CreateClistInput {
name: String!
description: String
starred: Boolean
user: CreateUserRelation!
ctags: CreateCtagRelation
}
input CreateUserRelation {
connect: ID!
}
input CreateCtagRelation {
create: [CreateCtagInput!]
connect: [ID!]
sync: [ID!]
}
input CreateCtagInput {
name: String!
}
Run Code Online (Sandbox Code Playgroud)
这是 GraphQL Playground 的屏幕截图:
使用该@spread指令时,需要对模型中的关系进行类型提示。
从文档中获取以下示例:
use Illuminate\Database\Eloquent\Relations\BelongsTo;
class Post extends Model
{
// WORKS
public function user(): BelongsTo
{
return $this->belongsTo(User::class);
}
// DOES NOT WORK
public function comments()
{
return $this->hasMany(Comment::class);
}
}
Run Code Online (Sandbox Code Playgroud)
Lighthouse 使用类型提示来确定应如何处理关系。
| 归档时间: |
|
| 查看次数: |
1169 次 |
| 最近记录: |