Page Contents

Overview

The easiest way to create a new model is with the model generator.

With LoopBack tools:

$ lb model <model-name>

With IBM API Connect v5 developer toolkit:

$ apic create --type model --name <model-name>

When creating a new model, the generator will prompt you for the properties in the model. Subsequently, you can add more properties to it using the property generator.

When you create a model (for example, called “myModel”), the tool:

  • Creates /common/models/myModel.json, the model definition JSON file.
  • Creates /common/models/myModel.js, where you can extend the model programmatically. For example to add remote methods. See Adding application logic for more information.
  • Adds an entry to /server/model-config.json for the model, specifying the model’s data source. See model-config.json for more information.

Once you’ve created your model, you may want to read:

Basic use

Use the LoopBack model generator to create a new model. In your application root directory, enter the command (for example, to create a “books” model):

$ lb model book

Or, using IBM API Connect v5 developer toolkit:

$ apic create --type model book

Then the tool will prompt you to:

  • Choose the data source to which the model will connect. By default, there will be only the in-memory data source (named “db”). When you create additional data sources with the data source generator, they will be listed as options.

  • Choose the model’s base class, from a list of built-in models classes and existing custom models in the application.

  • Choose whether to expose the model over REST; the default is yes. 
  • Enter a custom plural form; the default is to use standard plural (for example, “books”).
  • Add properties to the model; for each property it will prompt you for:

Adding properties

After you create a model, you can add more properties with the property generator.

$ lb property

The tool will prompt you to choose the model to which you want to add the property, along with the other property settings (as before). Then, it will modify the model definition JSON file accordingly.

Adding default values

One way to set a default value for a property is to set the “default” property in the models JSON file. You can also set the defaultFn property to set the default value to a globally-unique identifer (GUID) or the timestamp.

For more information, see the model JSON file  General property properties section.