{"id":9304,"date":"2022-09-18T07:24:06","date_gmt":"2022-09-18T01:54:06","guid":{"rendered":"https:\/\/jassweb.com\/solved\/solved-django-how-to-get-order_detail_data-as-per-order_id\/"},"modified":"2022-09-18T07:24:06","modified_gmt":"2022-09-18T01:54:06","slug":"solved-django-how-to-get-order_detail_data-as-per-order_id","status":"publish","type":"post","link":"https:\/\/jassweb.com\/solved\/solved-django-how-to-get-order_detail_data-as-per-order_id\/","title":{"rendered":"[Solved] Django: how to get order_detail_data as per order_id"},"content":{"rendered":"<p> [ad_1]<br \/>\n<\/p>\n<div id=\"answer-60488505\" class=\"answer js-answer accepted-answer js-accepted-answer\" data-answerid=\"60488505\" data-parentid=\"60453324\" data-score=\"0\" data-position-on-page=\"1\" data-highest-scored=\"1\" data-question-has-accepted-highest-score=\"1\" itemprop=\"acceptedAnswer\" itemscope itemtype=\"https:\/\/schema.org\/Answer\">\n<div class=\"post-layout\">\n<div class=\"votecell post-layout--left\"><\/div>\n<div class=\"answercell post-layout--right\">\n<div class=\"s-prose js-post-body\" itemprop=\"text\">\n<p>If you are using raw queries, then you just need to merge the data. Something like this should work,<\/p>\n<pre><code>def merge_order_data_and_detail(orders, details):\n  \"\"\"Group details by order_id and merge it in orders.\"\"\"\n  # create dictionary key:order_id value:[order_detail_data]\n  dic = {}\n  for d in details:\n    if d['order_id'] not in dic:\n      dic[d['order_id']] = []\n    dic[d['order_id']].append(d)\n  # iterate orders and add details\n  for o in orders:\n    if o['order_id'] in dic:\n      o['order_detail_data'] = dic[o['order_id']]\n\norders = [\n  {\n      \"order_id\": 1,\n      \"user_id\": 5\n  },\n  {\n      \"order_id\": 2,\n      \"user_id\": 50\n  }    \n]\ndetails = [\n  {\n      \"order_detail_id\": 1,\n      \"order_id\": 1,\n      \"user_id\": 5,\n      \"product_id\": 202\n  },\n  {\n      \"order_detail_id\": 2,\n      \"order_id\": 1,\n      \"user_id\": 5,\n      \"product_id\": 203\n  },\n  {\n      \"order_detail_id\": 3,\n      \"order_id\": 2,\n      \"user_id\": 50,\n      \"product_id\": 402\n  },\n  {\n      \"order_detail_id\": 4,\n      \"order_id\": 2,\n      \"user_id\": 50,\n      \"product_id\": 403\n  }\n]\nmerge_order_data_and_detail(orders, details)\nprint(orders)\n<\/code><\/pre>\n<p>Result:<\/p>\n<pre><code>[{'order_id': 1, 'user_id': 5, 'order_detail_data': [{'order_detail_id': 1, 'order_id': 1, 'user_id': 5, 'product_id': 202}, {'order_detail_id': 2, 'order_id': 1, 'user_id': 5, 'product_id': 203}]}, {'order_id': 2, 'user_id': 50, 'order_detail_data': [{'order_detail_id': 3, 'order_id': 2, 'user_id': 50, 'product_id': 402}, {'order_detail_id': 4, 'order_id': \n2, 'user_id': 50, 'product_id': 403}]}]\n<\/code><\/pre>\n<p>I remove a lot of orders and details attributes just to make simple to test.<\/p>\n<p>I don&#8217;t have the whole picture, but should think in using Django models if you are not already using it. It is the way to take advantage of the full potential of the framework.<\/p>\n<p>Hope it helps.<\/p>\n<\/p><\/div>\n<div class=\"mt24\"><\/div>\n<\/div>\n<p>            <span class=\"d-none\" itemprop=\"commentCount\">4<\/span> <\/p><\/div>\n<\/div>\n<p>[ad_2]<\/p>\n<p>solved Django: how to get order_detail_data as per order_id <\/p>\n","protected":false},"excerpt":{"rendered":"<p>[ad_1] If you are using raw queries, then you just need to merge the data. Something like this should work, def merge_order_data_and_detail(orders, details): &#8220;&#8221;&#8221;Group details by order_id and merge it in orders.&#8221;&#8221;&#8221; # create dictionary key:order_id value:[order_detail_data] dic = {} for d in details: if d[&#8216;order_id&#8217;] not in dic: dic[d[&#8216;order_id&#8217;]] = [] dic[d[&#8216;order_id&#8217;]].append(d) # iterate &#8230; <a title=\"[Solved] Django: how to get order_detail_data as per order_id\" class=\"read-more\" href=\"https:\/\/jassweb.com\/solved\/solved-django-how-to-get-order_detail_data-as-per-order_id\/\" aria-label=\"More on [Solved] Django: how to get order_detail_data as per order_id\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[320],"tags":[2621,340,349],"class_list":["post-9304","post","type-post","status-publish","format-standard","hentry","category-solved","tag-django-rest-framework","tag-mysql","tag-python"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>[Solved] Django: how to get order_detail_data as per order_id - JassWeb<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/jassweb.com\/solved\/solved-django-how-to-get-order_detail_data-as-per-order_id\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"[Solved] Django: how to get order_detail_data as per order_id - JassWeb\" \/>\n<meta property=\"og:description\" content=\"[ad_1] If you are using raw queries, then you just need to merge the data. Something like this should work, def merge_order_data_and_detail(orders, details): &quot;&quot;&quot;Group details by order_id and merge it in orders.&quot;&quot;&quot; # create dictionary key:order_id value:[order_detail_data] dic = {} for d in details: if d[&#039;order_id&#039;] not in dic: dic[d[&#039;order_id&#039;]] = [] dic[d[&#039;order_id&#039;]].append(d) # iterate ... Read more\" \/>\n<meta property=\"og:url\" content=\"https:\/\/jassweb.com\/solved\/solved-django-how-to-get-order_detail_data-as-per-order_id\/\" \/>\n<meta property=\"og:site_name\" content=\"JassWeb\" \/>\n<meta property=\"article:published_time\" content=\"2022-09-18T01:54:06+00:00\" \/>\n<meta name=\"author\" content=\"Kirat\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Kirat\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-django-how-to-get-order_detail_data-as-per-order_id\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-django-how-to-get-order_detail_data-as-per-order_id\/\"},\"author\":{\"name\":\"Kirat\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31\"},\"headline\":\"[Solved] Django: how to get order_detail_data as per order_id\",\"datePublished\":\"2022-09-18T01:54:06+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-django-how-to-get-order_detail_data-as-per-order_id\/\"},\"wordCount\":99,\"publisher\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\"},\"keywords\":[\"django-rest-framework\",\"mysql\",\"python\"],\"articleSection\":[\"Solved\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-django-how-to-get-order_detail_data-as-per-order_id\/\",\"url\":\"https:\/\/jassweb.com\/solved\/solved-django-how-to-get-order_detail_data-as-per-order_id\/\",\"name\":\"[Solved] Django: how to get order_detail_data as per order_id - JassWeb\",\"isPartOf\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#website\"},\"datePublished\":\"2022-09-18T01:54:06+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-django-how-to-get-order_detail_data-as-per-order_id\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/jassweb.com\/solved\/solved-django-how-to-get-order_detail_data-as-per-order_id\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-django-how-to-get-order_detail_data-as-per-order_id\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/jassweb.com\/solved\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"[Solved] Django: how to get order_detail_data as per order_id\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/jassweb.com\/solved\/#website\",\"url\":\"https:\/\/jassweb.com\/solved\/\",\"name\":\"JassWeb\",\"description\":\"Build High-quality Websites\",\"publisher\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/jassweb.com\/solved\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\",\"name\":\"Jass Web\",\"url\":\"https:\/\/jassweb.com\/solved\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png\",\"contentUrl\":\"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png\",\"width\":693,\"height\":132,\"caption\":\"Jass Web\"},\"image\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31\",\"name\":\"Kirat\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1775193939\",\"contentUrl\":\"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1775193939\",\"caption\":\"Kirat\"},\"sameAs\":[\"http:\/\/jassweb.com\"],\"url\":\"https:\/\/jassweb.com\/solved\/author\/jaspritsinghghumangmail-com\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"[Solved] Django: how to get order_detail_data as per order_id - JassWeb","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/jassweb.com\/solved\/solved-django-how-to-get-order_detail_data-as-per-order_id\/","og_locale":"en_US","og_type":"article","og_title":"[Solved] Django: how to get order_detail_data as per order_id - JassWeb","og_description":"[ad_1] If you are using raw queries, then you just need to merge the data. Something like this should work, def merge_order_data_and_detail(orders, details): \"\"\"Group details by order_id and merge it in orders.\"\"\" # create dictionary key:order_id value:[order_detail_data] dic = {} for d in details: if d['order_id'] not in dic: dic[d['order_id']] = [] dic[d['order_id']].append(d) # iterate ... Read more","og_url":"https:\/\/jassweb.com\/solved\/solved-django-how-to-get-order_detail_data-as-per-order_id\/","og_site_name":"JassWeb","article_published_time":"2022-09-18T01:54:06+00:00","author":"Kirat","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Kirat","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/jassweb.com\/solved\/solved-django-how-to-get-order_detail_data-as-per-order_id\/#article","isPartOf":{"@id":"https:\/\/jassweb.com\/solved\/solved-django-how-to-get-order_detail_data-as-per-order_id\/"},"author":{"name":"Kirat","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31"},"headline":"[Solved] Django: how to get order_detail_data as per order_id","datePublished":"2022-09-18T01:54:06+00:00","mainEntityOfPage":{"@id":"https:\/\/jassweb.com\/solved\/solved-django-how-to-get-order_detail_data-as-per-order_id\/"},"wordCount":99,"publisher":{"@id":"https:\/\/jassweb.com\/solved\/#organization"},"keywords":["django-rest-framework","mysql","python"],"articleSection":["Solved"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/jassweb.com\/solved\/solved-django-how-to-get-order_detail_data-as-per-order_id\/","url":"https:\/\/jassweb.com\/solved\/solved-django-how-to-get-order_detail_data-as-per-order_id\/","name":"[Solved] Django: how to get order_detail_data as per order_id - JassWeb","isPartOf":{"@id":"https:\/\/jassweb.com\/solved\/#website"},"datePublished":"2022-09-18T01:54:06+00:00","breadcrumb":{"@id":"https:\/\/jassweb.com\/solved\/solved-django-how-to-get-order_detail_data-as-per-order_id\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/jassweb.com\/solved\/solved-django-how-to-get-order_detail_data-as-per-order_id\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/jassweb.com\/solved\/solved-django-how-to-get-order_detail_data-as-per-order_id\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/jassweb.com\/solved\/"},{"@type":"ListItem","position":2,"name":"[Solved] Django: how to get order_detail_data as per order_id"}]},{"@type":"WebSite","@id":"https:\/\/jassweb.com\/solved\/#website","url":"https:\/\/jassweb.com\/solved\/","name":"JassWeb","description":"Build High-quality Websites","publisher":{"@id":"https:\/\/jassweb.com\/solved\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/jassweb.com\/solved\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/jassweb.com\/solved\/#organization","name":"Jass Web","url":"https:\/\/jassweb.com\/solved\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/","url":"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png","contentUrl":"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png","width":693,"height":132,"caption":"Jass Web"},"image":{"@id":"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31","name":"Kirat","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/image\/","url":"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1775193939","contentUrl":"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1775193939","caption":"Kirat"},"sameAs":["http:\/\/jassweb.com"],"url":"https:\/\/jassweb.com\/solved\/author\/jaspritsinghghumangmail-com\/"}]}},"_links":{"self":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts\/9304","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/comments?post=9304"}],"version-history":[{"count":0,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts\/9304\/revisions"}],"wp:attachment":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/media?parent=9304"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/categories?post=9304"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/tags?post=9304"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}