首页 > 解决方案 > GraphQL 关系在生产环境中返回 null

问题描述

更新:我们正在使用 Lighthouse GraphQL。我也重置了缓存,但它仍然只在产品上返回 null。

我有一个 GraphQL/Laravel 设置。出于某种奇怪的原因,我有一个仅在生产环境中返回 null 的关系,而本地和暂存返回它就好了(即使数据库重复)。如果我修补生产框并获得关系,它与 Laravel 一起返回就好了。无法弄清楚为什么 GraphQL 返回 null。这是设置:

GraphQL:

type Entry {
  id: ID!
  site_id: ID
  slug: String!
  sub_type: String
  content: EntryContent @hasOne
  published_at: DateTime
  created_at: DateTime
  updated_at: DateTime
  deleted_at: DateTime
}

type EntryContent {
  id: ID
  entry_id: ID!
  title: String
  status: String
  teaser: Object
  seo: Object
  content: Object
  created_at: DateTime
  updated_at: DateTime
}

返回 null 的是 Entry 上的 EntryContent。Laravel 设置只是对 Entry 模型进行了简单的关系调用

public function content(): HasOne {
    return $this->hasOne(EntryContent::class, 'entry_id', 'id')->latest();
}

我错过了什么吗?就像我说的,这只在 prod 上返回 null 而 staging 和本地设置返回关系。如此迷茫。

谢谢!

标签: laravelgraphqllighthouse

解决方案


推荐阅读