2016-06-03 1 views
0

Ich ist das API-Explorer Loopback unter Verwendung ein Modell mit den folgenden Parametern zu erstellen:Loopback Api Explorer erstellen Fehler: ungültiges Datum

{ 
    "name": "string", 
    "last_name": "string", 
    "phone": 0, 
    "is_invited": true, 
    "realm": "string", 
    "username": "string", 
    "credentials": {}, 
    "challenges": {}, 
    "email": "string", 
    "emailVerified": true, 
    "status": "string", 
    "created": "2016-06-03", 
    "lastUpdated": "2016-06-03", 
    "id": 0 
} 

jedoch Der Server ist immer einen 500-Datum ungültig Fehler zurückgegeben:

{ 
    "error": { 
    "name": "Error", 
    "status": 500, 
    "message": "Invalid date: Invalid Date", 
    "stack": "Error: Invalid date: Invalid Date\n at DateType } 
} 

Dies ist mein Modell als Referenz. Es erbt das Benutzermodell von Loopback.

{ 
    "name": "ExeboardUser", 
    "base": "User", 
    "idInjection": true, 
    "options": { 
    "validateUpsert": true 
    }, 
    "properties": { 
    "name": { 
     "type": "string", 
     "required": true 
    }, 
    "last_name": { 
     "type": "string" 
    }, 
    "phone": { 
     "type": "number", 
     "required": true 
    }, 
    "is_invited": { 
     "type": "boolean", 
     "required": true 
    } 
    }, 
    "validations": [], 
    "relations": { 
    "boards": { 
     "type": "hasMany", 
     "model": "Board", 
     "foreignKey": "exeboardUserId", 
     "through": "ExeboardUserBoard" 
    } 
    }, 
    "acls": [ 
    { 
     "principalType": "ROLE", 
     "principalId": "$everyone", 
     "permission": "ALLOW", 
     "property": "logout" 
    } 
    ], 
    "methods": { 

    } 
} 

Kann mir jemand sagen, was ist das Problem mit dem Datum? Ich denke, es ist korrekt formatiert, weil es die Standardparameter sind, die der Explorer erzeugt.

Antwort

1

Ich weiß nicht, ob Sie an der Antwort interessiert sind, aber ich habe vor kurzem begonnen, mit Loopback zu arbeiten und bekam den gleichen Fehler wie Sie, das Datumsformat, das vom Server angenommen wurde, ist 2017-01-06T23: 58 : 10.000Z

Ich hoffe, es hilft jemandem.

Ps .: Wenn das Datum nicht vom Modell benötigt wird, senden Sie es nicht einmal, nicht einmal mit "Null" oder "" Wert, es wird einen 500 Statusfehler werfen.

0

Das gewünschte Datumsformat ist: 2017-10-12T10: 31: 37.925Z

Und Wenn Sie Felder und Datecreated Dateupdate hinzufügen möchten, dann Datum mixin loopback-ds-timestamp-mixin

mixin Installieren Sie verwenden, um mit

npm i loopback-ds-timestamp-mixin --save

Fügen Sie die Mixins Eigenschaft auf Ihren Server/Modell-config.json:

{ 
"_meta": { 
"sources": [ 
    "loopback/common/models", 
    "loopback/server/models", 
    "../common/models", 
    "./models" 
], 
"mixins": [ 
    "loopback/common/mixins", 
    "../node_modules/loopback-ds-timestamp-mixin", 
    "../common/mixins" 
]} 
} 

Und in Ihrem Modell:

{ 
    "name": "ExeboardUser", 
    "base": "User", 
    "idInjection": true, 
    "options": { 
    "validateUpsert": true 
    }, 
    "mixins": { 
     "TimeStamp" : true 
    }, 
    "properties": { 
    "name": { 
     "type": "string", 
     "required": true 
    }, 
    "last_name": { 
     "type": "string" 
    }, 
    "phone": { 
     "type": "number", 
     "required": true 
    }, 
    "is_invited": { 
     "type": "boolean", 
     "required": true 
    } 
    }, 
    "validations": [], 
    "relations": { 
    "boards": { 
     "type": "hasMany", 
     "model": "Board", 
     "foreignKey": "exeboardUserId", 
     "through": "ExeboardUserBoard" 
    } 
    }, 
    "acls": [ 
    { 
     "principalType": "ROLE", 
     "principalId": "$everyone", 
     "permission": "ALLOW", 
     "property": "logout" 
    } 
    ], 
    "methods": { 

    } 
}