-
-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Issue: Nested CreateWithout[Relation]Input requires mandatory ID fields despite create or connectOrCreate usage #170
Comments
Thanks @StephanDecker ! Using v1.0.1, with the below Prisma model: model Phase {
id String @id @default(uuid())
name String @unique
} The GraphQL output I get is: input PhaseCreateInput {
id: String
name: String!
} Which is expected to both allow you to create with or without specifying What version of Prisma Client are you using? (it should display when running |
Yes, depending on the field definition (e.g. In my example it should be: input PhaseCreateInput {
name: String!
} That has been already been implemented in a nice way before, see this commit: prisma-appsync/packages/generator/src/compiler.ts Lines 683 to 691 in bc7320d
But I don't know where to put it now (after the refactoring) ;-) Version details: |
Hey @StephanDecker, not having However, you should be able to create a record with or without specifying On my end, the generated GraphQL output is the correct one: input PhaseCreateInput {
id: String
name: String!
} The above allows you to either specify or omit Could you please double-check that the output on your end is |
Sorry, you are completely right. I tried to simplify the problem which is different and didn't work. Unfortunately it's more complicated.
It will generate this in schema.gql type Mutation {
createExampleTable(
data: ExampleTableCreateInput!
): ExampleTable!
}
input ExampleTableCreateInput {
id: String
refTable: ExampleTableRefTableCreateNestedInput
}
input ExampleTableRefTableCreateNestedInput {
connect: [RefTableWhereUniqueInput!]
create: [RefTableCreateWithoutExampleTableInput!]
connectOrCreate: [RefTableConnectOrCreateWithoutExampleTableInput!]
}
input RefTableCreateWithoutExampleTableInput {
id: String
downstreamRefTable: RefTableDownstreamRefTableCreateNestedInput
downstreamRefTableId: String!
} The |
Got it! @StephanDecker could you please install To clarify, this issue is specifically about the requirement of mandatory ID fields in the nested You can have a look at the fix here: e1a4ea7 |
Thanks a lot for the quick fix!!
Exactly, it's about the mandatory ID fields in the nested |
Thanks for confirming @StephanDecker! Fix was released as part of v1.0.2. |
Great work! Before updating to the official 1 release it worked smoothly. After updating it seems that ID fields that are auto-populated by the database are mandatory when executing the create* mutations. That means: When creating a record I have to handover the id although the id is autogenerated in the database:
Here is the example:
schema.prisma:
generated schema.gql (using 1.0.0-rc.5):
generated schema.gql (after upgrade to 1.0.1):
Could you fix that? Thanks!
PS: That issue has been already solved in an earlier version: #62
The text was updated successfully, but these errors were encountered: