问题
The loopback application already comes equipped with a user model and CRUDs; however, I'm trying to hook an old database up to my loopback application that already contains a user model so the model discovery replies with:
ValidationError: The `ModelDefinition` instance is not valid. Details: `name` is not unique (value: "User").
at /home/theory/.nvm/versions/v0.12.4/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/lib/dao.js:264:12
at ModelConstructor.<anonymous> (/home/theory/.nvm/versions/v0.12.4/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/lib/validations.js:483:13)
at ModelConstructor.next (/home/theory/.nvm/versions/v0.12.4/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/lib/hooks.js:75:12)
at done (/home/theory/.nvm/versions/v0.12.4/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/lib/validations.js:480:25)
at /home/theory/.nvm/versions/v0.12.4/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/lib/validations.js:554:7
at ModelConstructor.<anonymous> (/home/theory/.nvm/versions/v0.12.4/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/lib/validations.js:353:5)
at allCb (/home/theory/.nvm/versions/v0.12.4/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/lib/dao.js:1374:7)
at /home/theory/.nvm/versions/v0.12.4/lib/node_modules/strongloop/node_modules/loopback-datasource-juggler/lib/connectors/memory.js:371:7
at /home/theory/.nvm/versions/v0.12.4/lib/node_modules/strongloop/node_modules/loopback/node_modules/continuation-local-storage/node_modules/async-listener/glue.js:188:31
at process._tickDomainCallback (node.js:381:11)
Can I rename the incoming model to something else using model discovery? Is there a merge option for models?
回答1:
This is because you're using a exiting model name (User) which belongs to loopback. Calling the model something like "UserAuth" would work.
Using slc arc
if connected to the database when changing the model name you can migrate
the old model to the new model.
To read more on why and how read their documentation here: Using built-in models
来源:https://stackoverflow.com/questions/31273114/how-do-you-import-a-user-model-with-strongloop-arc-database-discovery