0
我有一些記錄集合,它們具有某些特定屬性,我需要內部使用,但是當我將結果發送回用戶時,我希望這些屬性重新排列。Mongoose - 更改查詢結果記錄的內容
具體而言,我有一個geo
陣列,我想分解成lat
和lng
屬性。
我正在使用Mongoose,並想知道在搜索過程中是否有一種方法在記錄結果中使用pre/post
掛鉤(我已將它用於「保存」),以便在返回結果之前修改記錄。
所以,在DB,如果我們有:
{
name: 'Foo Bar',
geo: [-0.12, 32.17]
},
{
name: 'Pizza',
geo: [-0.09, 34.51]
}
從查詢的結果將是:
{
name: 'Foo Bar',
lat: 32.17,
lng: -0.12
},
{
name: 'Pizza',
lat: 34.51,
lng: -0.09
}
任何想法如何做到這一點?
芭你好,感謝您的回覆。你能否給我一個關於我如何處理doc對象的例子。我是否開始添加屬性並刪除我不希望用戶看到的內容?這個效果會搜索嗎? –
Doc是您需要修改的文檔/模型。你可以根據你的需要添加屬性,除非你聲明它們,否則它們不是你的Mongoose模型的一部分,但是爲了你需要的東西,我懷疑你只想格式化返回的對象以符合你的規格。每個搜索結果都會調用.post-init,讓您的文檔能夠滿足您的需求。 – Biba