2016-07-22 10 views
1

Wenn ein neues Modell durch Erzeugen von slc Loopback erstellt: Modell Buch, Wenn ich versuche, app zu starten, habe ich den folgenden Fehlerloopback Fehler: Modell nicht gefunden: Buch: Wenn ich versuche, nach dem Erstellen eines neuen Modells mit Befehl

 
> Error: Model not found: Book at Function.registry.getModel 
> (/home/joseph/node_projects/laplace-master/enquete/node_modules/loopback/lib/registry.js:273:9) 
> at 
> /home/joseph/node_projects/laplace-master/enquete/node_modules/loopback-boot/lib/executor.js:156:28 
> at Array.forEach (native) at defineModels 
> (/home/joseph/node_projects/laplace-master/enquete/node_modules/loopback-boot/lib/executor.js:151:23) 
> at setupModels 
> (/home/joseph/node_projects/laplace-master/enquete/node_modules/loopback-boot/lib/executor.js:140:3) 
> at execute 
> (/home/joseph/node_projects/laplace-master/enquete/node_modules/loopback-boot/lib/executor.js:28:3) 
> at bootLoopBackApp 
> (/home/joseph/node_projects/laplace-master/enquete/node_modules/loopback-boot/index.js:125:3) 
> at Object. 
> (/home/joseph/node_projects/laplace-master/enquete/server/server.coffee:24:1) 
> at Object. 
> (/home/joseph/node_projects/laplace-master/enquete/server/server.coffee:1:1) 
> at Module._compile (module.js:409:26) at Object.loadFile 
> (/usr/lib/node_modules/coffee-script/lib/coffee-script/register.js:16:19) 
> at Module.load 
> (/usr/lib/node_modules/coffee-script/lib/coffee-script/register.js:45:36) 
> at Function.Module._load (module.js:300:12) at Module.require 
> (module.js:353:17) at require (internal/module.js:12:17) at Object. 
> (/home/joseph/node_projects/laplace-master/enquete/handlers/conditionchecker/brand_condition.coffee:5:7) 
> at Object. 
> (/home/joseph/node_projects/laplace-master/enquete/handlers/conditionchecker/brand_condition.coffee:1:1) 
> at Module._compile (module.js:409:26) at Object.loadFile 
> (/usr/lib/node_modules/coffee-script/lib/coffee-script/register.js:16:19) 
> at Module.load 
> (/usr/lib/node_modules/coffee-script/lib/coffee-script/register.js:45:36) 
> at Function.Module._load (module.js:300:12) at Module.require 
> (module.js:353:17) at require (internal/module.js:12:17) at Object. 
> (/home/joseph/node_projects/laplace-master/enquete/common/models/question-group.js:13:3) at Module._compile (module.js:409:26) at Object.Module._extensions..js 
> (module.js:416:10) at Module.load 
> (/usr/lib/node_modules/coffee-script/lib/coffee-script/register.js:45:36) 
> at Function.Module._load (module.js:300:12) at Module.require 
> (module.js:353:17) at require (internal/module.js:12:17) at 
> /home/joseph/node_projects/laplace-master/enquete/node_modules/loopback-boot/lib/executor.js:170:20 
> at Array.forEach (native) at defineModels 
> (/home/joseph/node_projects/laplace-master/enquete/node_modules/loopback-boot/lib/executor.js:151:23) 
> at setupModels 
> (/home/joseph/node_projects/laplace-master/enquete/node_modules/loopback-boot/lib/executor.js:140:3) 
> at execute 
> (/home/joseph/node_projects/laplace-master/enquete/node_modules/loopback-boot/lib/executor.js:28:3) 
> at bootLoopBackApp 
> (/home/joseph/node_projects/laplace-master/enquete/node_modules/loopback-boot/index.js:125:3) 
> at Object. 
> (/home/joseph/node_projects/laplace-master/enquete/server/server.coffee:24:1) 
> at Object. 
> (/home/joseph/node_projects/laplace-master/enquete/server/server.coffee:1:1) 
> at Module._compile (module.js:409:26) at Object.exports.run 
> (/usr/lib/node_modules/coffee-script/lib/coffee-script/coffee-script.js:154:23) 
> at compileScript 
> (/usr/lib/node_modules/coffee-script/lib/coffee-script/command.js:224:29) 
> at compilePath 
> (/usr/lib/node_modules/coffee-script/lib/coffee-script/command.js:174:14) 
> at Object.exports.run 
> (/usr/lib/node_modules/coffee-script/lib/coffee-script/command.js:98:20) 
> at Object. (/usr/lib/node_modules/coffee-script/bin/coffee:7:41) at 
> Module._compile (module.js:409:26) at Object.Module._extensions..js 
> (module.js:416:10) at Module.load (module.js:343:32) at 
> Function.Module._load (module.js:300:12) at Function.Module.runMain 
> (module.js:441:10) at startup (node.js:139:18) at node.js:968:3 

Hier ist meine Modellklasse und Konfigurationsdatei.

book.js

module.exports = function(Book) { 

}; 

book.json

{ 
    "name": "Book", 
    "base": "PersistedModel", 
    "idInjection": true, 
    "options": { 
    "validateUpsert": true 
    }, 
    "properties": { 
    "id": { 
     "type": "string", 
     "required": true, 
     "default": "1" 
    }, 
    "name": { 
     "type": "string", 
     "required": true, 
     "default": "nil" 
    } 
    }, 
    "validations": [], 
    "relations": {}, 
    "acls": [], 
    "methods": {} 
} 

und in Server/Modell-config.json

{ 
    "_meta": { 
    "sources": [ 
     "../common/models", 
     "./models" 
    ] 
    }, 
    "User": { 
    "dataSource": "db" 
    }, 
    "AccessToken": { 
    "dataSource": "mysql", 
    "public": false 
    }, 
    "ACL": { 
    "dataSource": "mysql", 
    "public": false 
    }, 
    "RoleMapping": { 
    "dataSource": "mysql", 
    "public": false 
    }, 
    "Role": { 
    "dataSource": "mysql", 
    "public": false 
    }, 
    "Book": { 
    "dataSource": "mysql", 
    "public": false 
    } 
} 

Bitte helfen dieses Problem zu schließen.

+0

Irgendwelche Updates zu diesem Thema? – Overdrivr

Antwort

0

Ich glaube, Sie haben möglicherweise keine Modelle in der Datenquelle initialisiert.

Sie müssen den folgenden Code in einem Boot-Skript auszuführen (speichern Sie den Code zu ./server/boot/prepare-db.js zum Beispiel. Geben Sie den Namen, den Sie wollen, aber es muss im ./server/boot Unterordner sein.)

module.exports = function prepareDB(app, cb) { 
    var ds = app.dataSources.mysql; 
    ds.automigrate(function() { 
     console.log("MySQL db ready"); 
    }); 
} 

Die automigrate Funktion ist dokumentiert here.