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.
node.js mongodb mongodb-query loopback
|
show 6 more comments
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.
node.js mongodb mongodb-query loopback
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
|
show 6 more comments
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.
node.js mongodb mongodb-query loopback
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
node.js mongodb mongodb-query loopback
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
|
show 6 more comments
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
|
show 6 more comments
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
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.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
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
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
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
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