- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个基本的 Nestjs - Mongoose - Graphql api,我定义了两个模式:User
和 Event
//USER Schema
@Schema()
export class User extends Document {
@Prop()
username: string;
@Prop({ required: true })
password: string;
@Prop({ required: true, unique: true })
email: string;
@Prop({ required: true, unique: true })
handle: string;
@Prop()
avatar: string;
}
export const UserSchema = SchemaFactory.createForClass(User);
//EVENT schema
@Schema()
export class Event extends Document {
@Prop({
type: MongooseSchema.Types.ObjectId,
ref: User.name,
required: true,
})
creator: GqlUser;
@Length(5, 30)
@Prop({ required: true })
title: string;
@Length(5, 200)
@Prop({ required: true })
description: string;
@Prop()
createdDate: string;
@Prop()
public: boolean;
@Prop()
active: boolean;
}
export const EventSchema = SchemaFactory.createForClass(Event);
在
EventSchema
, 字段
creator
键入为
MongooseSchema.Types.ObjectId
指着
User
我的
events.resolvers.ts
看起来像这样:
@Resolver(of => GqlEvent)
export class EventsResolvers {
constructor(private eventsService: EventsService) {}
@Query(returns => [GqlEvent])
async events() {
return this.eventsService.findAll();
}
@Mutation(returns => GqlEvent)
async createEvent(
@Args('createEventInput') createEventInput: CreateEventDto,
) {
return this.eventsService.create(createEventInput);
}
}
事件 Dtos :
@ObjectType()
export class GqlEvent {
@Field(type => ID)
id: string;
@Field(type => GqlUser)
creator: GqlUser;
@Field()
title: string;
@Field()
description: string;
@Field()
createdDate: string;
@Field()
public: boolean;
@Field()
active: boolean;
}
@InputType()
export class CreateEventDto {
@Field(type => ID)
creator: GqlUser;
@Field()
@Length(5, 30)
title: string;
@Field()
@Length(5, 200)
description: string;
@Field()
@IsBoolean()
public: boolean;
}
这样,Nestjs 生成以下 gql 模式(为了清楚起见,我跳过了与用户 CRUD 相关的部分):
# ------------------------------------------------------
# THIS FILE WAS AUTOMATICALLY GENERATED (DO NOT MODIFY)
# ------------------------------------------------------
type GqlUser {
id: ID!
username: String!
handle: String!
avatar: String!
email: String!
}
type GqlEvent {
id: ID!
creator: GqlUser!
title: String!
description: String!
createdDate: String!
public: Boolean!
active: Boolean!
}
type Query {
events: [GqlEvent!]!
}
type Mutation {
createEvent(createEventInput: CreateEventDto!): GqlEvent!
}
input CreateEventDto {
creator: ID!
title: String!
description: String!
public: Boolean!
}
什么有效:
createEvent
突变在数据库中正确插入文档:
{
"_id":{"$oid":"5f27eacb0393199e3bab31f4"},
"creator":{"$oid":"5f272812107ea863e3d0537b"},
"title":"test event",
"description":"a test description",
"public":true,
"active":true,
"createdDate":"Mon Aug 03 2020",
"__v":{"$numberInt":"0"}
}
我的问题:当我尝试请求
creator
的子字段时出现以下错误:
query {
events {
id
creator {
id
}
createdDate
public
description
title
active
}
}
回复 :
"errors": [
{
"message": "ID cannot represent value: <Buffer 5f 27 28 12 10 7e a8 63 e3 d0 53 7b>",
"locations": [
{
"line": 6,
"column": 7
}
],
"path": [
"createEvent",
"creator",
"id"
],
"extensions": {
"code": "INTERNAL_SERVER_ERROR",
"exception": {
"message": "ID cannot represent value: <Buffer 5f 27 28 12 10 7e a8 63 e3 d0 53 7b>",
"stacktrace": [
"GraphQLError: ID cannot represent value: <Buffer 5f 27 28 12 10 7e a8 63 e3 d0 53 7b>",...
因为当我省略时它工作正常
creator
领域,我懂 Mongoose
MongooseSchema.Types.ObjectId
导致 gql 模式出现问题...但我找不到合适的方法来修复它。提前寻求帮助
最佳答案
它实际上与 creator
的事实有关。字段未填充。
改变自
async findAll(): Promise<Event[]> {
return this.eventModel
.find()
.exec();
}
到
async findAll(): Promise<Event[]> {
return this.eventModel
.find()
.populate('creator')
.exec();
}
解决了我的问题。错误信息有点误导。
关于mongoose - GraphQLError : ID cannot represent value: <Buffer. ..>",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63228105/
如果向下滚动 this page有点,你会看到英国英语连字符模式,如: \patterns{ % just type if you're not using INITEX .ab4i .ab3ol
这可能是一个愚蠢的菜鸟问题,但 : 在以下上下文中表示什么: var stuffToDo = { 'bar' : function() { alert('the value w
考虑一个基于方 block 的游戏,其中每个代理都可以直线/对角线(8 个方向)移动。基本上,像这样的 map 可以表示为规则的二维网格,其中 0 表示可步行位置,1 表示不可步行位置(我使用的是 L
这个问题已经有答案了: Retrieving the last record in each group - MySQL (33 个回答) 已关闭 4 年前。 我正在尝试进行查询,我正在尝试获取某些字
我们正在创建一种非常简单的编程语言,使用 Flex 和 Bison 进行解析和语法分析,并使用 C 构建编译器。 在直接进行汇编之前,我们将根据语言规则创建一个抽象语法树。但是我们很难从语言中表示一个
我从一个文本文件中接收数据,其中的日期通常采用“标准时间”(例如中部标准时间或东部标准时间。我的意思是没有观察到夏令时调整)。使用 Noda Time,我试图找出表示这一点的最佳方式。 我的第一个想法
我有一个实体,例如 compound_tax。每个compound_tax 可以由另一个实体tax 的多个实例组成。例如,一个 compound_tax 可以由两种税组成(顺序可能很重要): VAT:
问题:如何使用连续 map - Link1: Bernoulli Shift Map为二进制序列建模? 概念:Dyadic 映射也称为 Bernoulli Shift 映射,表示为 x(k+1) =
我正在玩指向成员的指针,并决定实际打印指针的值。结果出乎我的意料。 #include struct ManyIntegers { int a,b,c,d; }; int main () {
我一直在学习 C# OOP 的速成类(class),很想知道“LIST”关键字在下面的代码中代表什么: var actors = new List(); 最佳答案 List是一个带有类型参数的类。这称
我刚刚开始使用 Coursera 的 Scala 函数式编程,我发现很难提交我的作业。我可以在我的 IntelliJ IDE 中单独运行我的函数,但是当我进入终端并输入 sbt about 时,我收到
我有一个基本的 Nestjs - Mongoose - Graphql api,我定义了两个模式:User和 Event //USER Schema @Schema() export class Us
我有这个数据: # A tibble: 19 x 8 country Prop_A Prop_B Prop_C
在 Akka 流中,Mat in Source[Out, Mat] 或 Sink[In, Mat] 代表什么。什么时候会真正使用? 最佳答案 Mat type 参数表示此流的具体化值的类型。 请记住,
Range.SpecialCells method可用于返回满足特定条件的 Range 对象。标准的类型是使用 xlCellType 常量指定的。 其中一个常量 (xlCellTypeBlanks)
问题 我有一个复杂的查询,该查询连接三个表并返回一组行,每一行都包含来自其同级表的数据。如何以RESTful方式表示这一点? FWIW我知道不一定有“正确”的方法来做,但是我有兴趣了解什么是这种情况下
有没有一种方法可以生成从 red 到 的 UIColor 表(或者 UIColor 的数组) green 这样变量 var match = 100 将具有相应的颜色 green 而 var match
你好, 我正在学习 html 和 css。为了更好地理解进度条的工作原理,我创建了一个带有几个按钮和进度条的小型演示页面。 正如您在下面的 CSS 代码中看到的,我特别要求进度条的背景显示为红色。这在
我正在尝试编写一个函数来初始化数组并在返回之前将其打乱。 将 numba 导入为 nb @nb.jit(nopython=True, cache=True) def test(x): ind
我有一个数据库 winforms 应用程序,它使用以 C# 编写的 SQLite。我正在尝试使用 C# 包装器执行一些 SQLite 查询,但在检查 NULL 值的查询中遇到了一些问题。这是调用语句。
我是一名优秀的程序员,十分优秀!