繁体   English   中英

使用NodeJS从MongoDB获取数据

[英]Get data from MongoDB with NodeJS

我是MongoDB和NodeJS开发的新手。 我已经阅读了所有发现的内容,并且可能搜索错误。 请帮我!

我有这个分贝-名称:商店,文档:类别,产品

这是db.collection('categories');

 { "_id" : { "$oid" : "5172d1daffdd81f3234d5f88" }, "categories" : [ { "categories" : [ { "id" : "mens-clothing-suits", "image" : "categories/mens-clothing-suits.jpg", "name" : "Suits", "page_description" : "Shop Men's suits for business or pleasure. Enjoy from a variety of different styles and cuts.", "page_title" : "Mens Suits for Business and Casual", "parent_category_id" : "mens-clothing", "c_showInMenu" : true }, { "id" : "mens-clothing-jackets", "image" : "categories/mens-clothing-sportscoats.png", "name" : "Jackets & Coats", "page_description" : "Shop Men's Jackets, Coats & Outerwear. Classic outdoor-tested garments with traditional styling details that provide comfort, insulation and ease of movement, whatever the weather.", "page_title" : "Men's Jackets Including Jackets & Blazzers", "parent_category_id" : "mens-clothing", "c_showInMenu" : true }, { "id" : "mens-clothing-dress-shirts", "image" : "categories/mens-clothing-dress-shirts.jpg", "name" : "Dress Shirts", "page_description" : "Shop Men's dress shirts in a variety of colors and styles including striped, button down, non-iron & more", "page_title" : "Men's Dress Shirts including Striped, Button Down, Non-Iron & More", "parent_category_id" : "mens-clothing", "c_showInMenu" : true }, { "id" : "mens-clothing-shorts", "image" : "categories/mens-clothing-shorts.png", "name" : "Shorts", "page_description" : "Shop Men's spring shorts in cotton. Variety of different fits.", "page_title" : "Men's Spring Shorts", "parent_category_id" : "mens-clothing", "c_showInMenu" : true }, { "id" : "mens-clothing-pants", "image" : "categories/mens-clothing-pants.png", "name" : "Pants", "page_description" : "Shop Men's Trousers. Practical, easy-to-wear styles wherever you're headed. Check out famous rugged, long-lasting trousers, jeans, cargo pants and more.", "page_title" : "Men's Pants Including Khakis, Cargos, Trousers, Jeans & More", "parent_category_id" : "mens-clothing", "c_showInMenu" : true } ], "id" : "mens-clothing", "image" : "categories/mens-clothing-accessories.jpg", "name" : "Clothing", "page_description" : "Shop Men's Clothing. Relaxed, timeless classics you can rely on; from denim to corduroys and sweaters to shirts. Huge range of contemporary colours and eco-aware designs: great casualwear.", "page_title" : "Mens Clothing Including Suits, Tops, Bottoms & More", "parent_category_id" : "mens", "c_showInMenu" : true }, { "categories" : [ { "id" : "mens-accessories-ties", "image" : "categories/mens-accessories-ties.png", "name" : "Ties", "page_description" : "Shop Mens's Ties for all occasions including business or casual.", "page_title" : "Men's Casual and Business Ties", "parent_category_id" : "mens-accessories", "c_showInMenu" : true }, { "id" : "mens-accessories-gloves", "name" : "Gloves", "page_description" : "Shop Men'sGloves. Versatile, commuter, boot, oxford, deer and resolve gloves. All with famous long-lasting quality.", "page_title" : "Men's Gloves", "parent_category_id" : "mens-accessories", "c_showInMenu" : true }, { "id" : "mens-accessories-luggage", "image" : "categories/mens-accessories-luggage.jpg", "name" : "Luggage", "page_description" : "Shop Men's Wheeled Luggage. Versatile, rugged suitcases, baggage, holdalls and shoulder bags. All with famous long-lasting quality.", "page_title" : "Men's Wheeled Luggage", "parent_category_id" : "mens-accessories", "c_showInMenu" : true } ], "id" : "mens-accessories", "name" : "Accessories", "page_description" : "Shop mens accessories including belts, wallets. gloves, hats, watches, luggage & more.", "page_title" : "Men's Accessories Belts, Wallets. Gloves, Hats, Watches, Luggage & More", "parent_category_id" : "mens", "c_showInMenu" : true } ], "id" : "mens", "name" : "Mens", "page_description" : "Men's range. Hard-wearing boots, jackets and clothing for unbeatable comfort day in, day out. Practical, easy-to-wear styles wherever you're headed.", "page_title" : "Men's Footwear, Outerwear, Clothing & Accessories", "parent_category_id" : "root", "c_showInMenu" : true } 

对于NodeJS我有->

 exports.index = function(req, res) { var _ = require("underscore"); // var parseSchema = require('mongodb-schema'); var mdbClient = require('mongodb').MongoClient; mdbClient.connect("mongodb://localhost:27017/shop", function(err, db) { var collection = db.collection('categories'); collection.find().toArray(function(err, items) { res.render("index", { // // Underscore.js lib _ : _, // // Template data title : "Hello World!", items : items }); db.close(); }); }); console.dir("Called findOne!"); }; 

我需要设置变量:

var Categories = //所有类别,例如:男士,女士

var subCategories = //所有子类别,例如:服装等。

达到每个变量的正确方法是什么?

谢谢!

现场演示:

db.getCollection('categories').find(
       {"categories.0.categories.image":"categories/mens-clothing-suits.jpg"},
       {"categories.categories.image":1});

同样,您可以对其他字段执行此操作

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM