2017-07-06 2 views
0
const AssetSchema = new Schema({ 
    name: { 
    type: String, 
    required: [true, 'Name value is required'], 
    unique: true 
    }, 
    past:[[Number], Date] 
}); 

Ich versuche ein Array zu speichern, das ein anderes Array von Zahlen und ein Datum mit jedem Array enthält. Ist das machbar oder nicht so?Array von zwei Datentypen und wie man es ändert

Ich Aktualisierung der Array mit diesem:

assets[i].past.push([12,24], new Date(Date.now()).toISOString()); 

Aber ich bekomme die Fehlermeldung:

CastError: Cast to [number] failed for value "["2017-07-06T18:15:23.631Z"]" at path "past" 

Danke für die Hilfe, Ed.

Antwort

0

Vielleicht irre ich mich, aber ich glaube nicht, dass Sie past:[[Number], Date] tun können. Mungo scheint es nicht zu verstehen, wie es in dem Fehler Cast to [number]

sagt Warum nicht expliziter sein und stattdessen ein Array von Objekten verwenden?

Das ist ein Array von Objekten, wo jedes Objekt ein Array von Zahlen und ein Datum enthält.

assets[i].past.push({ 
    numbers: [12,24], 
    date: new Date(Date.now()) // I don't think you need to use .toISOString() 
}); 
Verwandte Themen