Mongoose: Схема, массив, значение по умолчанию (значение по умолчанию «[]» не работает)

Созданный на 15 февр. 2011  ·  6Комментарии  ·  Источник: Automattic/mongoose

var mongoose = require('mongoose');
var Schema = mongoose.Schema;

mongoose.connect('mongodb://localhost/dbTest');

var arrayTestSchema = new Schema({
    anArray: {
      type: Array,
      'default': []
    }
});

mongoose.model('ArrayTest', arrayTestSchema);
ArrayTest = mongoose.model('ArrayTest');

var myTest = new ArrayTest();
console.log(arrayTestSchema.anArray);

mongoose.connection.close();

отображает "undefined"

Самый полезный комментарий

Это не удается, потому что вы не получаете доступ к своему экземпляру документа. Я закомментировал ваш console.log и заменил его правильным.

var mongoose = require('mongoose');
var Schema = mongoose.Schema;

mongoose.connect('mongodb://localhost/dbTest');

var arrayTestSchema = new Schema({
    anArray: {
      type: Array,
      'default': []
    }
});

mongoose.model('ArrayTest', arrayTestSchema);
ArrayTest = mongoose.model('ArrayTest');

var myTest = new ArrayTest();
// console.log(arrayTestSchema.anArray);
console.log(myTest.anArray);

mongoose.connection.close();

Все 6 Комментарий

По крайней мере, в мастере это отлично работает для меня ... за исключением того, что он возвращает MongooseArray, поэтому он полон других безумств :) Не только значение.

Какая у вас версия?

var mongoose = require ('мангуст');
var Schema = mongoose.Schema;

mongoose.connect ('mongodb: // localhost / dbTest');

var arrayTestSchema = новая схема ({

 Title: String,
 Description: String,
 Status: String

});

mongoose.model ('ArrayTest', arrayTestSchema);
ArrayTest = mongoose.model ('ArrayTest');

var myTest = новый ArrayTest ();

myTest.Title = 'Проект';
myTest.Description = 'используя mongodb & node';
myTest.Status = 'открыть';

console.log (myTest);

mongoose.connection.close ();

Я использую 1.0.12, версия npm.
Должна быть основная версия, поскольку я вижу, что 1.0.12 была выпущена вчера.

Не понимайте, о чем вы хотите указать на прадэптхундиил.

Это не удается, потому что вы не получаете доступ к своему экземпляру документа. Я закомментировал ваш console.log и заменил его правильным.

var mongoose = require('mongoose');
var Schema = mongoose.Schema;

mongoose.connect('mongodb://localhost/dbTest');

var arrayTestSchema = new Schema({
    anArray: {
      type: Array,
      'default': []
    }
});

mongoose.model('ArrayTest', arrayTestSchema);
ArrayTest = mongoose.model('ArrayTest');

var myTest = new ArrayTest();
// console.log(arrayTestSchema.anArray);
console.log(myTest.anArray);

mongoose.connection.close();

лол, хорошо, я вижу, вчера был плохой день для меня. Спасибо, что указали на это =)

@bnoguchi как насчет типа элементов массива?

Была ли эта страница полезной?
0 / 5 - 0 рейтинги