掲示板を作る時、
必要なカラムはnameとbodyだけだったので、そのように指定していたのだけれど、
いつの間にかカラム指定が全く動作しなくなっていたので修正した時の変更箇所
nameとbodyを取りたい場合
これまでとこれから
.find( {visible: "on"}, { name:-1, body:-1})
.find( {visible: "on"}, { projection:{name:-1, body:-1} })
わかりやすいコードもかける
以下すべて同じ結果です。
.find( {visible: "on"}, { projection:{response:"出す", name:"出す"} })
.find( {visible: "on"}, { projection:{response:"出す", name:"出さない"} })
.find( {visible: "on"}, { projection:{response:true, name:true} })
.find( {visible: "on"}, { projection:{response:false, name:false} })
判定は !!valueだと思えばわかりやすそう
けれど、これはダメ
出したい奴と出したくない奴を同時に記述すると動きませんでした。
.find( {visible: "on"}, { projection:{response:false, name:true} })
Projection cannot have a mix of inclusion and exclusion.と云われ、
ドキュメントにもダメと書かれていました。
The fields to return in the query. Object of fields to include or exclude (not both), {'a':1}
出したい奴だけか、出したくない奴だけというのがちょっと辛いかな
これらは、ここに書いています
https://mongodb.github.io/node-mongodb-native/3.1/api/Collection.html
イツカラ?トカソンナノハシリマセン シッテルヒトオシエテホシイ
多分なんだけど、第2引数に指定できていたObjectを受け付けなくなって、
projectionでやれ!ってなったんじゃないかなぁ