次の情報を含むドキュメント:
{
"address": [{
"Street": "123 xyz",
"City": "Belmont"
}]
}
都市の名前を表示するにはどうすればよいですか。これは正しいです:
function(doc) {
emit(doc.address.City,null);
}
のみを返しますnull
。「ベルモント」という名前が見たかった。どんな助けでも大歓迎です。
次の情報を含むドキュメント:
{
"address": [{
"Street": "123 xyz",
"City": "Belmont"
}]
}
都市の名前を表示するにはどうすればよいですか。これは正しいです:
function(doc) {
emit(doc.address.City,null);
}
のみを返しますnull
。「ベルモント」という名前が見たかった。どんな助けでも大歓迎です。
あなたのデータでは、は配列であるため、プロパティaddress
はありません。City
データに住所が 1 つしかない場合:
{
"address": {
"Street": "123 xyz",
"City": "Belmont"
}
}
取得/{database}/_design/{ddoc}/_view/{view}
する必要があります:
{"rows":[
{"key":"Belmont", "id":"{id}", "value":null}
]}
補足として、次のものも取得できることに注意してください/{database}/_design/{ddoc}/_view/{view}?include_docs=true
。
{"rows":[
{"key":"Belmont", "id":"{id}", "value":null, "doc":{
"address": {
"Street": "123 xyz",
"City": "Belmont"
}
}}
]}
最後になりましたが、データに複数のアドレスが本当に必要な場合は、それらすべてを送信できます。
function(o) {
for each (var a in o.address) {
emit(a.City);
}
}