Cloudant DBで1つのフィールド(SAVE_TYPE_SUBMIT)の値に基づいてすべてのJSONドキュメントを取得するビューを作成しようとしています。私の問題は、JSON文書にはネストされたフィールドが含まれていることです。以下のサンプル文書をご覧ください。ネストされたjsonドキュメントのcloudantビュー
{
"_id ": "70f79cc9309fd8b2bcca90efd871f993 ",
"_rev": "1-18fe726fc3d99f50a945ab30c9ffeb4b",
"NAME": "qqq",
"EMAIL": "qqq",
"TITLE": "qq",
"DATE_OF_REPORT": "2017/08/17",
"PUBLIC_OFFICIALS_CONTACTED": [{
"NAME_PUBLIC_OFFICIAL": "qq"
},
{
"TITLE_PUBLIC_OFFICIAL": "qq"
}
],
"MANAGER": "qq",
"SAVE_TYPE_SUBMIT": "Submit"
}
作成されたビューは、次のとおりです。
function(doc) {
if (("SAVE_TYPE_SUBMIT" in doc) && (doc.SAVE_TYPE_SUBMIT == "Submit")) {
emit (doc.LAST_UPDATE_BY, [doc.NAME, doc.EMAIL, doc.TITLE, doc.DATE_OF_REPORT, doc.PUBLIC_OFFICIALS_CONTACTED, doc.MANAGER]);
}
}
私は自分のアプリケーションには、このビューからデータを取得しようとすると、私はネストされたフィールド、すなわちNAME_PUBLIC_OFFICIALとTITLE_PUBLIC_OFFICIALの値を得ることはありません。これらのフィールドは[オブジェクト、オブジェクト]として表示されます。 PUBLIC_OFFICIALS_CONTACTEDに複数のNameフィールドとTitleフィールドを含めることができます。
ネストされたフィールドの値を取得するためにビューをカスタマイズする必要がある方法を理解してください。私はこれで苦労しており、指導や教材は高く評価されます!
ありがとうございました。 – Aparna