How to apply fields filter on nested object in loopback model query?











up vote
1
down vote

favorite












I have this data on mongodb in a table named "Alerts" in geojson format



{
"_id" : ObjectId("5be40b8099d5b81e6115d517"),
"title" : "Real-time earthquake",
"priority" : "high",
"status" : NumberInt("1"),
"extAlertData" : {
"type" : "Feature",
"properties" : {
"mag" : 4.11,
"place" : "12km S of Tres Pinos, CA",
"time" : 1541163534230,
},
"geometry" : {
"type" : "Point",
"coordinates" : [
-121.3146667,
36.6801667,
6.48
]
},
"id" : "nc73105276"
}
}
{
"_id" : ObjectId("5be401c39b9e021a4c1a5c80"),
"title" : "Real-time earthquake",
"priority" : "high",
"status" : NumberInt("1"),
"extAlertData" : {
"type" : "Feature",
"properties" : {
"mag" : 4.5,
"place" : "107km NW of Tobelo,
Indonesia",
"time" : 1541665816710,
},
"geometry" : {
"type" : "Point",
"coordinates" : [
127.2763,
2.3671,
31.55
]
},
"id" : "us1000hp6t"
}
}


I want to retrieve the field "id" which is nested inside "extAlertData" using model query.



Following query does not working.



db.Alerts.find({fields : {"extAlertData.id": true}},
function (err, Alerts){
//process alert extAlertData.id
}
});


Query is retrieving the following error:



TypeError: Cannot read property 'id' of undefined


How can I query using fields filter in mongoDB? I am using loopback framework of node js.



Thanks in advance.










share|improve this question




















  • 1




    You need to use $exists if you are looking to check the existence of 'id' filed db.Alerts.find( { 'extAlertData.id': { $exists: true}}). And i guess the part '{fields : ' i wrong in your query
    – Avij
    Nov 8 at 13:41










  • Sorry. I am not looking for existence of 'id' field in db. I have array of similar object in the given format as specified in the question.I am trying to get all "extAlertData.id" and save to an array.
    – Annie
    Nov 8 at 13:59










  • Then you need to check if it exists in the record and then project it
    – Avij
    Nov 8 at 14:02










  • can you please help me with the query? How to specify to get all "extAlertData.id"
    – Annie
    Nov 8 at 14:06






  • 1




    @AnthonyWinzlet . It's working.I got the expected output.Thank you so much
    – Annie
    Nov 9 at 5:38















up vote
1
down vote

favorite












I have this data on mongodb in a table named "Alerts" in geojson format



{
"_id" : ObjectId("5be40b8099d5b81e6115d517"),
"title" : "Real-time earthquake",
"priority" : "high",
"status" : NumberInt("1"),
"extAlertData" : {
"type" : "Feature",
"properties" : {
"mag" : 4.11,
"place" : "12km S of Tres Pinos, CA",
"time" : 1541163534230,
},
"geometry" : {
"type" : "Point",
"coordinates" : [
-121.3146667,
36.6801667,
6.48
]
},
"id" : "nc73105276"
}
}
{
"_id" : ObjectId("5be401c39b9e021a4c1a5c80"),
"title" : "Real-time earthquake",
"priority" : "high",
"status" : NumberInt("1"),
"extAlertData" : {
"type" : "Feature",
"properties" : {
"mag" : 4.5,
"place" : "107km NW of Tobelo,
Indonesia",
"time" : 1541665816710,
},
"geometry" : {
"type" : "Point",
"coordinates" : [
127.2763,
2.3671,
31.55
]
},
"id" : "us1000hp6t"
}
}


I want to retrieve the field "id" which is nested inside "extAlertData" using model query.



Following query does not working.



db.Alerts.find({fields : {"extAlertData.id": true}},
function (err, Alerts){
//process alert extAlertData.id
}
});


Query is retrieving the following error:



TypeError: Cannot read property 'id' of undefined


How can I query using fields filter in mongoDB? I am using loopback framework of node js.



Thanks in advance.










share|improve this question




















  • 1




    You need to use $exists if you are looking to check the existence of 'id' filed db.Alerts.find( { 'extAlertData.id': { $exists: true}}). And i guess the part '{fields : ' i wrong in your query
    – Avij
    Nov 8 at 13:41










  • Sorry. I am not looking for existence of 'id' field in db. I have array of similar object in the given format as specified in the question.I am trying to get all "extAlertData.id" and save to an array.
    – Annie
    Nov 8 at 13:59










  • Then you need to check if it exists in the record and then project it
    – Avij
    Nov 8 at 14:02










  • can you please help me with the query? How to specify to get all "extAlertData.id"
    – Annie
    Nov 8 at 14:06






  • 1




    @AnthonyWinzlet . It's working.I got the expected output.Thank you so much
    – Annie
    Nov 9 at 5:38













up vote
1
down vote

favorite









up vote
1
down vote

favorite











I have this data on mongodb in a table named "Alerts" in geojson format



{
"_id" : ObjectId("5be40b8099d5b81e6115d517"),
"title" : "Real-time earthquake",
"priority" : "high",
"status" : NumberInt("1"),
"extAlertData" : {
"type" : "Feature",
"properties" : {
"mag" : 4.11,
"place" : "12km S of Tres Pinos, CA",
"time" : 1541163534230,
},
"geometry" : {
"type" : "Point",
"coordinates" : [
-121.3146667,
36.6801667,
6.48
]
},
"id" : "nc73105276"
}
}
{
"_id" : ObjectId("5be401c39b9e021a4c1a5c80"),
"title" : "Real-time earthquake",
"priority" : "high",
"status" : NumberInt("1"),
"extAlertData" : {
"type" : "Feature",
"properties" : {
"mag" : 4.5,
"place" : "107km NW of Tobelo,
Indonesia",
"time" : 1541665816710,
},
"geometry" : {
"type" : "Point",
"coordinates" : [
127.2763,
2.3671,
31.55
]
},
"id" : "us1000hp6t"
}
}


I want to retrieve the field "id" which is nested inside "extAlertData" using model query.



Following query does not working.



db.Alerts.find({fields : {"extAlertData.id": true}},
function (err, Alerts){
//process alert extAlertData.id
}
});


Query is retrieving the following error:



TypeError: Cannot read property 'id' of undefined


How can I query using fields filter in mongoDB? I am using loopback framework of node js.



Thanks in advance.










share|improve this question















I have this data on mongodb in a table named "Alerts" in geojson format



{
"_id" : ObjectId("5be40b8099d5b81e6115d517"),
"title" : "Real-time earthquake",
"priority" : "high",
"status" : NumberInt("1"),
"extAlertData" : {
"type" : "Feature",
"properties" : {
"mag" : 4.11,
"place" : "12km S of Tres Pinos, CA",
"time" : 1541163534230,
},
"geometry" : {
"type" : "Point",
"coordinates" : [
-121.3146667,
36.6801667,
6.48
]
},
"id" : "nc73105276"
}
}
{
"_id" : ObjectId("5be401c39b9e021a4c1a5c80"),
"title" : "Real-time earthquake",
"priority" : "high",
"status" : NumberInt("1"),
"extAlertData" : {
"type" : "Feature",
"properties" : {
"mag" : 4.5,
"place" : "107km NW of Tobelo,
Indonesia",
"time" : 1541665816710,
},
"geometry" : {
"type" : "Point",
"coordinates" : [
127.2763,
2.3671,
31.55
]
},
"id" : "us1000hp6t"
}
}


I want to retrieve the field "id" which is nested inside "extAlertData" using model query.



Following query does not working.



db.Alerts.find({fields : {"extAlertData.id": true}},
function (err, Alerts){
//process alert extAlertData.id
}
});


Query is retrieving the following error:



TypeError: Cannot read property 'id' of undefined


How can I query using fields filter in mongoDB? I am using loopback framework of node js.



Thanks in advance.







node.js mongodb mongodb-query loopback






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 9 at 5:14

























asked Nov 8 at 12:50









Annie

113




113








  • 1




    You need to use $exists if you are looking to check the existence of 'id' filed db.Alerts.find( { 'extAlertData.id': { $exists: true}}). And i guess the part '{fields : ' i wrong in your query
    – Avij
    Nov 8 at 13:41










  • Sorry. I am not looking for existence of 'id' field in db. I have array of similar object in the given format as specified in the question.I am trying to get all "extAlertData.id" and save to an array.
    – Annie
    Nov 8 at 13:59










  • Then you need to check if it exists in the record and then project it
    – Avij
    Nov 8 at 14:02










  • can you please help me with the query? How to specify to get all "extAlertData.id"
    – Annie
    Nov 8 at 14:06






  • 1




    @AnthonyWinzlet . It's working.I got the expected output.Thank you so much
    – Annie
    Nov 9 at 5:38














  • 1




    You need to use $exists if you are looking to check the existence of 'id' filed db.Alerts.find( { 'extAlertData.id': { $exists: true}}). And i guess the part '{fields : ' i wrong in your query
    – Avij
    Nov 8 at 13:41










  • Sorry. I am not looking for existence of 'id' field in db. I have array of similar object in the given format as specified in the question.I am trying to get all "extAlertData.id" and save to an array.
    – Annie
    Nov 8 at 13:59










  • Then you need to check if it exists in the record and then project it
    – Avij
    Nov 8 at 14:02










  • can you please help me with the query? How to specify to get all "extAlertData.id"
    – Annie
    Nov 8 at 14:06






  • 1




    @AnthonyWinzlet . It's working.I got the expected output.Thank you so much
    – Annie
    Nov 9 at 5:38








1




1




You need to use $exists if you are looking to check the existence of 'id' filed db.Alerts.find( { 'extAlertData.id': { $exists: true}}). And i guess the part '{fields : ' i wrong in your query
– Avij
Nov 8 at 13:41




You need to use $exists if you are looking to check the existence of 'id' filed db.Alerts.find( { 'extAlertData.id': { $exists: true}}). And i guess the part '{fields : ' i wrong in your query
– Avij
Nov 8 at 13:41












Sorry. I am not looking for existence of 'id' field in db. I have array of similar object in the given format as specified in the question.I am trying to get all "extAlertData.id" and save to an array.
– Annie
Nov 8 at 13:59




Sorry. I am not looking for existence of 'id' field in db. I have array of similar object in the given format as specified in the question.I am trying to get all "extAlertData.id" and save to an array.
– Annie
Nov 8 at 13:59












Then you need to check if it exists in the record and then project it
– Avij
Nov 8 at 14:02




Then you need to check if it exists in the record and then project it
– Avij
Nov 8 at 14:02












can you please help me with the query? How to specify to get all "extAlertData.id"
– Annie
Nov 8 at 14:06




can you please help me with the query? How to specify to get all "extAlertData.id"
– Annie
Nov 8 at 14:06




1




1




@AnthonyWinzlet . It's working.I got the expected output.Thank you so much
– Annie
Nov 9 at 5:38




@AnthonyWinzlet . It's working.I got the expected output.Thank you so much
– Annie
Nov 9 at 5:38

















active

oldest

votes











Your Answer






StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53208107%2fhow-to-apply-fields-filter-on-nested-object-in-loopback-model-query%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown






























active

oldest

votes













active

oldest

votes









active

oldest

votes






active

oldest

votes
















draft saved

draft discarded




















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.





Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


Please pay close attention to the following guidance:


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53208107%2fhow-to-apply-fields-filter-on-nested-object-in-loopback-model-query%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







這個網誌中的熱門文章

Academy of Television Arts & Sciences

L'Équipe

1995 France bombings