I want to fetch specific key value pairs from mongodb collection with golang dynamically.
err := collection.Find(operations).Limit(2).All(&products)
How I can do it but it must be dynamically, because the select key value pairs are changing on my side:
Collection document:
{
"_id" : 168,
"entity_id" : "168",
"type_id" : "simple",
"attribute_set_id" : "24",
"entity_type_id" : "4",
"created_at" : "2013-10-31 14:51:18",
"has_options" : "0",
"required_options" : "0",
"sku" : "AIC-19000-16",
"updated_at" : "2016-11-22 21:04:46",
"base_type" : 154,
"table_shape" : 164,
"manufacturer" : 15,
"delivery" : "Free Delivery & Setup",
"visibility" : 4,
"tax_class_id" : 2,
"status" : 1,
"enable_googlecheckout" : 1,
"discontinued" : 0,
"featured_fme" : 0,
"featured_product" : 0,
"amxnotif_hide_alert" : 1,
"is_recurring" : 0,
"condition" : 3043,
"ships" : null,
"ignore_wisepricer" : 0,
"fedexable" : null,
"dropshipped" : 0,
"verified_by" : 3301,
"reward_point_product" : null,
"mw_reward_point_sell_product" : null,
"ashley_sale" : 0,
"disable_amazonpayments" : 0,
"for_configurables" : null,
"rfm" : 0,
"mk_stockmessage" : false,
"mk_hideshipdate" : 0,
"reviews_counter" : 0,
"mpn" : "19000-16",
"name" : "After Eight Titanium Leg Rectangular Dining Table",
"style" : "73",
"furniture_type" : "76",
"meta_title" : "After Eight Titanium Leg Rectangular Dining Table,
19000-16, Aico Furniture",
"meta_description" : "After Eight Titanium Leg Rectangular Dining
Table from Aico Furniture, 19003-88",
"options_container" : "container2",
"url_key" : "after-eight-titanium-leg-rectangular-dining-table",
"url_path" : "after-eight-titanium-leg-rectangular-dining-
table.htm",
"gallery" : "/9/19000-16_d1.jpg, /9/19000-16_d2.jpg, /9/19000-
16_d3.jpg, /9/19000-16_d4.jpg, /9/19000-16_d5.jpg, /9/19000-
16_d6.jpg, /9/19000-16_d7.jpg,",
"image" : "/a/f/after8-silo-4legrecdin-sm-19000-16.jpg",
"small_image" : "/a/f/after8-silo-4legrecdin-sm-19000-16.jpg",
"thumbnail" : "/a/f/after8-silo-4legrecdin-sm-19000-16.jpg",
"image_label" : null,
"small_image_label" : null,
"thumbnail_label" : null,
"table_height" : "2640,2642",
"dining_type" : "2645",
"product_listing_ads" : "Aico Furniture",
"carton_dimensions" : null,
"msrp_enabled" : "2",
"msrp_display_actual_price_type" : "4",
"set_includes" : null,
"custom_design" : null,
"page_layout" : null,
"gift_message_available" : null,
"color" : "3553",
"clearance" : null,
"rfm_type" : null,
"mk_stocktext" : null,
"mk_ships_in" : null,
"mk_preordertext" : null,
"jet_product_status" : "not_uploaded",
"meta_keyword" : "After Eight Titanium Leg Rectangular Dining
Table, 19000-16, Aico Furniture, dining room, dining, dining room
furniture, Leg Rectangular Dining Table, After Eight Titanium,
Modern, Wood, Light Colors, amini furniture, michael amini,
amini,",
"description" : "",
"short_description" : "",
"features" : "Part of After Eight Collection <br />Titanium Finish
<br />Hollywood Regency Style <br /> Bold tonal contrasts and fun
geometric shapes <br />Design that blends the best of many styles
<br />Uniquely customizable look <br />Bold splashes of color
& striking patterned accessories <br />Includes 2- 24\"
Extension Leaves <br />Table Extends from 74\" to 122\" <br
/>Mirrored glass inserts in the top <br />Platinum accents <br
/>Also available in Pearl <br /> Optional Chairs<br />Table Only,
Chairs Sold Separately<br />",
"dimensions" : "4 Leg Rectangular Dining Table: 127.50\"W x 45\"D
x 31\"H - 290lbs. <br />Optional Side Chair: 21.50\"W x 26\"D x
45.75\"H - 24lbs. <br />Optional Arm Chair: 23.75\"W x 26\"D x
45.75\"H - 28lbs. <br />",
"custom_layout_update" : null,
"upc" : null,
"cost" : 999.0,
"price" : 2849.0,
"tier_price_for_bundle" : 2279.2,
"weight" : 290.0,
"regularprice" : 2629.0,
"special_price" : null,
"msrp" : null,
"estimated_shipping" : null,
"estimated_set_shipping" : null,
"family_rating_summary" : 0.0,
"news_from_date" : null,
"news_to_date" : null,
"special_from_date" : null,
"special_to_date" : null,
"custom_design_from" : null,
"custom_design_to" : null,
"mk_expecdate" : null,
"mk_preorderdate" : null,
}
I want to select below key values:
This is the format in which these keys come with me:
map[2: 3:manufacturer 8:upc 12:weight 15: 0:name 5:short_description
6:sku 13:category 1: 4:manufacturer 9:image 10:url
16:product_listing_ads 7:mpn 11:final_price 14:mapping:1]
Thanks for your help.