/ Ako uložiť selektory mongoDB v mongoDB s Meteor - mongodb, meteor

Ako ukladať mongoDB selektory v mongoDB s Meteor - mongodb, meteor

Snažím sa ukladať voliče mongoDB do kolekcie mongoDB, aby ste mohli vykonávať dynamickú analýzu dát. Ale keď sa pokúšam ukladať zložitejší výber, vrátane $-prefixed výrazy, ako sú nasledujúce (bežal z Meteor / JavaScript):

filterBy:
foo:
$ne: "bar"

Mám túto chybu:

key $ne must not start with "$"

Existuje a riadny spôsob uloženia voličov mongoDB alebo musím vytvoriť nejakú logiku na nahradenie a nahradenie všetkých $ v objekte?

odpovede:

0 pre odpoveď č. 1

Ako už bolo spomenuté vyššie, otázka je bolo zodpovedané na všeobecné účely. Načrtám tu riešenie špecifické pre Meteor.

Použitím Meteor Collection Hooks Pridal som automatickú konverziu po uložení:

FilterCollection.before.insert (userId, doc) ->
if doc.filterBy?
doc.filterBy = JSON.stringify doc.filterBy

A potom používam pravidelné transform previesť ho späť:

FilterCollection = new Meteor.Collection "filters",
transform: (document) ->
if document.filterBy?
document.filterBy = JSON.parse document.filterBy