Ah alright this isn’t RBAC then this is normal Strapi default. We forcefully disable the CTB (Content-Type builder) in Production and Staging. Even in development mode it will only be enabled under a very specific set of circumstances:
- You must be using the
NODE_ENV=development
(the default env) - You must be using the
strapi develop
command (oryarn develop
/npm run develop
) - You cannot use a
server.js
file with the start syntax - You cannot use the CTB in any other environment
For reasons why I’ll lead you to this FAQ entry: Troubleshooting - Strapi Developer Documentation
But will post it here also:
Strapi stores model configuration files (what defines the model schema) in files such as api/restaurant/models/restaurant.settings.json
. Due to how Node.js works, in order for changes to take effect, that would require Node to restart the server. This could potentially cause downtime of your production service and likewise these changes should be tracked in some kind of source control.
Generally your “flow” of development would follow the following path:
- Development - Develop your Strapi application locally on your host machine, then push changes into source control
- Staging - Deploy changes from source control to a “production-like” environment for testing
- Production - If no other changes are needed, deploy into production
- Repeat as needed, it is recommended that you properly version and test your application as you go
At this time and in the future there is no plan to allow model creating or updating while in a production environment, and there is currently no plans to move model settings into the database. There is no known nor recommended workarounds for this.