diff --git a/.changeset/clean-dolphins-report.md b/.changeset/clean-dolphins-report.md new file mode 100644 index 00000000..c5bcc27d --- /dev/null +++ b/.changeset/clean-dolphins-report.md @@ -0,0 +1,5 @@ +--- +"@premieroctet/next-admin-generator-prisma": patch +--- + +fix: remove anyOf for one-to-many relations (#513) diff --git a/apps/example/options.tsx b/apps/example/options.tsx index 70dd332a..08b677a2 100644 --- a/apps/example/options.tsx +++ b/apps/example/options.tsx @@ -341,9 +341,19 @@ export const options: NextAdminOptions = { icon: "UserIcon", list: { display: ["id", "user"], + fields: { + user: { + formatter: (user) => user.email, + }, + }, }, edit: { display: ["user", "bio"], + fields: { + user: { + optionFormatter: (user) => user.email, + }, + }, }, }, }, diff --git a/packages/generator-prisma/src/dmmf.ts b/packages/generator-prisma/src/dmmf.ts index 907cf6c4..ab916f73 100644 --- a/packages/generator-prisma/src/dmmf.ts +++ b/packages/generator-prisma/src/dmmf.ts @@ -128,6 +128,13 @@ export const insertDmmfData = ( relation: getRelationData(dmmf, dmmfField, dmmfModel.name), } ); + + if ( + dmmfField.kind === "object" && + (model.properties![propertyName] as NextAdminJSONSchema)?.anyOf + ) { + delete (model.properties![propertyName] as NextAdminJSONSchema).anyOf; + } } }); });