I created an api-server loopbackjs application and I want to define a model called User having completely different properties with the built-in one. So when I run slc loopback:model
, it throws an error as below.
events.js:163
throw er; // Unhandled 'error' event
^
ValidationError: The `ModelDefinition` instance is not valid. Details: `name` is not unique (value: "User").
at /usr/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/lib/dao.js:326:12
at ModelConstructor.<anonymous> (/usr/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/lib/validations.js:511:13)
at ModelConstructor.next (/usr/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/lib/hooks.js:82:12)
at done (/usr/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/lib/validations.js:508:25)
at /usr/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/lib/validations.js:586:7
at ModelConstructor.<anonymous> (/usr/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/lib/validations.js:380:5)
at /usr/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/lib/dao.js:1985:11
at /usr/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/node_modules/async/lib/async.js:396:17
at done (/usr/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/node_modules/async/lib/async.js:167:19)
at /usr/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/node_modules/async/lib/async.js:40:16
at /usr/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/node_modules/async/lib/async.js:393:21
at /usr/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/lib/dao.js:1962:17
at doNotify (/usr/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/lib/observer.js:99:49)
at doNotify (/usr/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/lib/observer.js:99:49)
at doNotify (/usr/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/lib/observer.js:99:49)
at doNotify (/usr/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/lib/observer.js:99:49)
I'd really appreciate that anyone can shed a light on this issue if I really need a model called User in my application.
loopback comes with some built-in models;-) User is one of them. name your model in lowercase(user).
it's better that your user model inherit from the loopback's User model because there are lots of implemented functionalities you may need.