mirror of
https://github.com/strapi/strapi.git
synced 2025-10-27 16:10:08 +00:00
Update documentation to explain table/collection naming for plugins
This commit is contained in:
parent
b208b0aa92
commit
1a8eed9a5e
@ -68,6 +68,24 @@ Please refer to the [Controllers documentation](../guides/controllers.md) for mo
|
|||||||
|
|
||||||
A plugin can have its own models.
|
A plugin can have its own models.
|
||||||
|
|
||||||
|
##### Table/Collection naming
|
||||||
|
|
||||||
|
Sometimes it happens that the plugins inject models that have the same name as yours. Let's take a quick example.
|
||||||
|
|
||||||
|
You already have `User` model defining in your `./api/user/models/User.settings.json` API. And you decide to install the `Users & Permissions` plugin. This plugin also contains a `User` model. To avoid the conflicts, the plugins' models are not globally exposed which means you cannot access to the plugin's model like this:
|
||||||
|
|
||||||
|
```js
|
||||||
|
module.exports = {
|
||||||
|
findUser: async function (params) {
|
||||||
|
// This `User` global variable will always make a reference the User model defining in your `./api/xxx/models/User.settings.json`.
|
||||||
|
return await User.find();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Also, the table/collection name won't be `users` because you already have a `User` model. That's why, the framework will automatically prefix the table/collection name for this model with the name of the plugin. Which means in our example, the table/collection name of the `User` model of our plugin `Users & Permissions` will be `users-permissions_users`. If you want to force the table/collection name of the plugin's model, you can add the `collectionName` attribute in your model.
|
||||||
|
|
||||||
|
|
||||||
Please refer to the [Models documentation](../guides/models.md) for more informations.
|
Please refer to the [Models documentation](../guides/models.md) for more informations.
|
||||||
|
|
||||||
### Policies
|
### Policies
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user