везде делают так:
enum Role {
USER
MODERATOR
ADMIN
}
type User {
roles: [Role]
}
Но если потом вдруг понадобится расширить список ролей потребуется вносить изменения в SDL (в этот enum).
Вариант с type вместо enum кажется гибче:
type Role {
id: ID!
name: String
}
type User {
roles: [Role]
}
Ну и сделать мутации createRole, updateRole, deleteRole, которые могут дёргать только юзеры с ролью администратора.
Чем вариант с enum может быть выигрышнее? Упускаю ли я что-то?
Мне кажется без разницы, кому как удобнее, кто-то не против динамического изменения ролей, кто-то не любит ничего запоминать (как я) и ему лучше что б все роли были указаны в enum
Обсуждают сегодня