sql >> Databáze >  >> NoSQL >> MongoDB

Mongoose &float hodnoty

Zatímco mongoDB plně podporuje float typ, mongoose podporuje pouze typ Number což je celé číslo. Pokud se pokusíte uložit do mongoDB plovoucí číslo pomocí mongooses typu Number bude převeden na řetězec.

Chcete-li to vyřešit, budete muset nahrát nějaký plugin pro mongoose, který rozšíří jeho typy hodnot. Existují některé pluginy, které nejlépe fungují s měnami nebo daty, ale ve vašem případě bych použil https://www.npmjs.com/package/mongoose-double .

Váš model po změnách bude vypadat nějak takto:

var mongoose = require('mongoose')
require('mongoose-double')(mongoose);

var SchemaTypes = mongoose.Schema.Types;
var WaypointSchema = new Schema({
    lat: {
        type: SchemaTypes.Double
    },
    lng: {
        type: SchemaTypes.Double
    },
    section: {
        type: Number
    }
    created: {
        type: Date,
        default: Date.now
    }
});

mongoose.model('Waypoint', WaypointSchema);

Doufám, že to pomůže.



  1. mongo $součet složený při provádění $unwind a poté $group na více polích

  2. Jak mohu zadat dotaz na odlišné hodnoty v Mongoose?

  3. Jak najít v mongodb poslední položku pole?

  4. Redis Managed Pub/Sub Server