panter / ra-data-prisma

Packages to connect react-admin with prisma version 2
MIT License
85 stars 28 forks source link

Handling noncount nouns / no plural forms #117

Open mwillbanks opened 2 years ago

mwillbanks commented 2 years ago

When using typegraphql (but also would likely be an issue when nexus), when using noncount nouns or a resource that does not have a plural form (i.e. equipment) the queries for GET_LIST and GET_ONE will be the same thus causing a conflict.

typegraphql handles this by exporting these differently instead of having a singular equipment which would be duplicated, it names the queries differently:

findManyEquipment findUniqueEquipment

In this case, it would be somewhat easy to change the underlying query logic that is inside of the makeIntrospectionOptions to handle this based on the query dialect for now (which already exists). However, since other methods might exist it might be better to be able to pass in the query resolver name through the useDataProvider options.

As an example:

useDataProvider({
  clientOptions: { uri: "/graphql" },
  resourceViews: {
    Equipment: {
      resource: "Equipment",
      operationNames: {
        one: 'findUniqueEquipment',
        many: 'findManyEquipment',
      }
    }
  }
});