Page Contents
Overview
The file /server/model-config.json
configures LoopBack models, for example it binds models to data sources and specifies whether a model is exposed over REST.
The models referenced in this file must be either a built-in models or custom models defined by a JSON file in the common/models/
folder.
Note:
You can also use a /client/model-config.json
for client-specific (browser) model configuration.
For example, here is the default model-config.json
that lists all the built-in models:
{
"_meta": {
"sources": [
"loopback/common/models",
"loopback/server/models",
"../common/models",
"./models"
],
"mixins": [
"loopback/common/mixins",
"loopback/server/mixins",
"../common/mixins",
"./mixins"
]
},
"User": {
"dataSource": "db"
},
"AccessToken": {
"dataSource": "db",
"public": false
},
"ACL": {
"dataSource": "db",
"public": false
},
"RoleMapping": {
"dataSource": "db",
"public": false
},
"Role": {
"dataSource": "db",
"public": false
},
"Message": {
"dataSource": null
}
}
Top-level properties
Property | Type | Description |
---|---|---|
_meta.sources | Array |
Array of relative paths to custom model definitions.
By default, LoopBack applications load models from /common/models subdirectory.
To specify a different location (or even multiple locations) use the _meta.sources property,
whose value is an array of directory paths.
|
_meta.mixins | Array | Array of relative paths to custom mixin definitions. See Defining mixins for more information. |
modelName | String | Name of a model, either a built-in model or a custom model defined in the common/models/ folder. |
Model properties
Each JSON key is the name of a model and an object with the following properties.
Property | Type | Description |
---|---|---|
datasource | String | Name of the data source to which the model is connected. Must correspond to a data source defined in datasources.json. |
public | Boolean | Whether the model API is exposed. If true, then the model is exposed over REST. Does not affect accessibility of Node API. |