Получите ключи от Mongo db с помощью мангуста

У меня есть схема БД:

'use-strict';

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

var groupUsersSchema = new mongoose.Schema({
    groupNames: {}
});


mongoose.model('grouproles', groupUsersSchema);

В этом я храню Json. Из схемы мне нужно получить ключи в этом JSON. JSON - это:

{'Mathematicians': ['euclid', 'riemann', 'euler', 'gauss', 'test'], 'Scientists'
: ['einstein', 'galieleo', 'tesla', 'newton']}

Я храню JSON как:

var groupData = new Groups({
       groupNames : {data}
     });

где Группы - название модели.


person Pravin Bhasker    schedule 02.03.2017    source источник
comment
В чем вопрос?   -  person Myonara    schedule 02.03.2017
comment
Мне нужно получить ключи от БД. т.е. мне нужно вернуть (Математики, Scieneits). Чтобы быть более понятным, нужно получить имена атрибутов из db   -  person Pravin Bhasker    schedule 02.03.2017
comment
используйте операцию поиска и цикл в выборе массива, используйте Object.keys для получения ключей от объектов   -  person p0k8h    schedule 02.03.2017


Ответы (3)


Напишите метод, который находит нужный документ, а затем используйте Object.keys в найденном документе, чтобы получить ключи документа.

person simon-p-r    schedule 02.03.2017

использовать Object.keys

var a = {'Mathematicians': ['euclid', 'riemann', 'euler', 'gauss', 'test'], 'Scientists'
: ['einstein', 'galieleo', 'tesla', 'newton']}

console.log(Object.keys(a))

person p0k8h    schedule 02.03.2017

1) Object.keys (obj) - это один из способов, который уже предложили другие люди.

2) Вы также можете использовать путь к схеме для этого, но это даст вам все атрибуты объекта, включая методы.

3) Если вам очень часто требуются ключи, вы также можете сохранить их как отдельный документ и очень легко получить его в любое время.

var groupUsersSchema = new mongoose.Schema({
    groupNames: {your_json_data}
    groupFieldName : [your_keys]
});
person node_saini    schedule 02.03.2017