sql >> Databasteknik >  >> NoSQL >> MongoDB

Hur man bygger en rekursiv struktur med MongoDB

Personligen skulle jag implementera en materialiserad sökvägsstruktur här, det är mycket enkelt att uppdatera och fråga med prefixet inga skiftlägesokänsliga regex (vilket betyder att det kommer att använda ett index), så ett exempel skulle se ut så här:

{_id: {}, path: 'about_us/where_are_we'}

Detta gör också, som du kan se, för SEO-vänliga webbadresser att träffa direkt på detta träd vilket ger dig maximal kraft. Detta är särskilt användbart i hjälpsystem där du vill visa en URL som:

/help/how-to-use-my-site

Sedan how-to-use-my-site kan slå direkt på banan eller till och med längre kan du hysa två fält och slå direkt på hela texten som:

{_id: {}, path: 'about_us/where_are_we', normalised_url: 'where_are_we'}

Naturligtvis som föregående svar sa att du måste veta hur du vill komma åt ditt innehåll men materialiserade vägar är en bra början enligt min mening.

Du kan läsa mer om trädstrukturer i Mongo här:http://www. mongodb.org/display/DOCS/Trees+in+MongoDB



  1. PyMongo vs MongoEngine för Django

  2. kan inte starta mongo db, initandlisten undantag

  3. $fitler kapslad array med $lte $gte

  4. Mongoose Försöker öppna en osluten anslutning