React-admin에서 Category resource를 edit할 때
"Could not find query getCategorie"라는 에러가 발생하였다. 이유는 App.js에서 resource를 렌더링 할 때,
<Resource
name="categories"
// name="categories"
list={CategoryList}
edit={CategoryEdit}
/>
이렇게 렌더링 했기 때문에 react-admin에서 type을 categorie라고 인식했기 때문이다.
그래서 나는 Schema에서 Category type에 대한 query를 만들 때 trick을 사용하였다.
type Category
@model(queries: { get: "getCategory", list: "listCategorys" })
@auth(
rules: [{ allow: public, operations: [read] }, { allow: groups, groups: ["user", "adminUser"] }]
)
@key(
name: "byMainCategoryName"
fields: ["mainCategoryName", "id"]
queryField: "mainCategoryNamesByName"
) {
id: ID!
mainCategoryName: String!
subName: [String]!
}
이렇게 @model(queries: { get: "getCategory", list: "listCategorys" }) 을 사용하여 원래는 listCategories라고 만들어 지는 것을 listCategorys로 만들어지게 했다.
listCategories로 만들어진다면 react-admin에서 Category resource를 렌더링 할 때 "Could not find query listCategorys" 라는 에러가 발생하기 때문이다.
그리고 나서
<Resource
name="categorys" options={{label: 'Categories'}}
list={CategoryList}
edit={CategoryEdit}
/>
options로 Categories라고 이름을 렌더링 시켰다.