{"id":36363,"date":"2022-12-23T10:42:00","date_gmt":"2022-12-23T07:42:00","guid":{"rendered":"https:\/\/orbitsoft.com\/blog\/?p=36363"},"modified":"2024-03-06T14:47:16","modified_gmt":"2024-03-06T11:47:16","slug":"django","status":"publish","type":"post","link":"https:\/\/orbitsoft.com\/blog\/django\/","title":{"rendered":"What tasks we solve with Django, a Python web framework"},"content":{"rendered":"\n<p>Python is a versatile programming language with a simple syntax and a huge community. With it, you can solve tasks of various sizes \u2013 from creating bots, to developing applications and websites, and even machine learning.<\/p>\n\n\n\n<p>Many frameworks and libraries have been developed in Python with ready-made modules and code packages. Programmers use them to reduce development time. In this article, we\u2019ll be talking about the Django framework.<\/p>\n\n\n<div class=\"wp-block-lazyblock-case lazyblock-case-2aNY1U\"><div class=\"styled-block\">\n  <div class=\"styled-block__main\">\n          <h3 class=\"styled-block__title\">\n        In brief      <\/h3>\n        <ul class=\"case__list\">\n            \n                    <li class=\"case__item\">\n              \n          <span class=\"case__order\">01<\/span>\n          <div class=\"case__body\">\n            <div class=\"case__title\">\n              <span>Technology<\/span>\n            <\/div>\n            <p><span style=\"font-weight: 400;\">Python framework Django\u00a0<\/span><\/p>          <\/div>\n        <\/li>\n            \n                    <li class=\"case__item\">\n              \n          <span class=\"case__order\">02<\/span>\n          <div class=\"case__body\">\n            <div class=\"case__title\">\n              <span>What tasks we solve<\/span>\n            <\/div>\n            <ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Creation of data processing services<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Creation of web applications, social networks, and web chats<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Development of various APIs<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Creation of CMS, CRM, and email services<\/span><\/li>\n<\/ul>          <\/div>\n        <\/li>\n            \n                    <li class=\"case__item\">\n              \n          <span class=\"case__order\">03<\/span>\n          <div class=\"case__body\">\n            <div class=\"case__title\">\n              <span>Types of companies it\u2019s suitable for<\/span>\n            <\/div>\n            <p><span style=\"font-weight: 400;\">E-commerce, learning platforms, think tanks, information and news resources, mailing management services, social networks, and startups<\/span><\/p>          <\/div>\n        <\/li>\n            \n                    <li class=\"case__item\">\n              \n          <span class=\"case__order\">04<\/span>\n          <div class=\"case__body\">\n            <div class=\"case__title\">\n              <span>Advantages<\/span>\n            <\/div>\n            <p><span style=\"font-weight: 400;\">Fast development, the ability to easily make changes to the functionality of systems and scale projects, a high level of security, and the stability of services<\/span><\/p>          <\/div>\n        <\/li>\n          <\/ul>\n  <\/div>\n  <\/div><\/div>\n\n<div class=\"wp-block-lazyblock-heading lazyblock-heading-sbLvg\"><h2 class=\"article__h\">Why Choose Django <\/h2><\/div>\n\n\n<p>Django is a popular and multifunctional framework for web applications, as well as a set of libraries: components, modules, utilities, and ready-made solutions in the Python language. Pinterest, Instagram, Dropbox, Bitbucket, Mozilla, and Discovery have all been developed on Django. <\/p>\n\n\n<div class=\"wp-block-lazyblock-figure lazyblock-figure-1ofsLg\"><figure class=\"article__figure \">\n        <div class=\"article__figure-img\" >\n        <img decoding=\"async\" src=\"https:\/\/orbitsoft.com\/blog\/wp-content\/uploads\/\u0421\u043d\u0438\u043c\u043e\u043a-\u044d\u043a\u0440\u0430\u043d\u0430-2022-10-20-\u0432-16.55.28-2.png\" alt=\"Django installation screenshot\">\n    <\/div>\n                <figcaption><em>Welcome page of a new Django project<\/em> <\/figcaption>\n    <\/figure><\/div>\n\n\n<p>Django is best suited for back-end development of projects of medium complexity. <br>For example, if you need to implement a website, web application, or data processing service. With the help of built-in and additional libraries, the framework allows you to quickly add necessary functions: connect a database, create an API, install a web chat, or implement an email newsletter.<\/p>\n\n\n\n<p>You can create a complete website with Django. The built-in template engine and methods for generating html pages allow you to develop front-end for simple sites.&nbsp; For medium and large projects with dynamic content, Django&#8217;s capabilities are insufficient, so this framework is used as a backend, and the frontend is developed based on React, Angular, or Vue.&nbsp;<\/p>\n\n\n\n<p>The main advantage of Django is fast development. The framework doesn\u2019t require a lot of time to set up the configuration, and it allows the programmer to quickly create an MVP &#8211; a test version of the product with a basic set of functions. This is necessary for testing of an idea before big money is invested in it. More in the article: <a href=\"https:\/\/orbitsoft.com\/ru\/blog\/mvp\/\">&#8220;MVP: How to Test a Business Hypothesis and Get Funding&#8221;.<\/a><\/p>\n\n\n\n<p> If the customer and the target audience like the implementation, the project can be finalized in accordance with the detailed terms of reference. To do this, you need to make changes to the code and register the necessary settings. <\/p>\n\n\n<div class=\"wp-block-lazyblock-figure lazyblock-figure-Zw340V\"><figure class=\"article__figure \">\n        <div class=\"article__figure-img\" >\n        <img decoding=\"async\" src=\"https:\/\/orbitsoft.com\/blog\/wp-content\/uploads\/\u0421\u043d\u0438\u043c\u043e\u043a-\u044d\u043a\u0440\u0430\u043d\u0430-2022-10-21-\u0432-09.31.56.png\" alt=\"Django administrative panel screenshot\">\n    <\/div>\n                <figcaption><em>The programmer creates the necessary functionality and, using the Django administrative panel, manages models \u2013 objects that describe the entities stored in the database<\/em> <\/figcaption>\n    <\/figure><\/div>\n\n<div class=\"wp-block-lazyblock-heading lazyblock-heading-Z2iJKRR\"><h2 class=\"article__h\">Tasks we use Django for in projects <\/h2><\/div>\n\n<div class=\"wp-block-lazyblock-heading3 lazyblock-heading3-Z1k3t7h\"><h3 class=\"article__h3\">Develop an API<\/h3><\/div>\n\n\n<p>On Django, you can implement an API &#8211; a data exchange mechanism. Applications, websites, and other services constantly request and send information to each other through this protocol. Thanks to the API, sellers make online transactions, exchanges show current exchange rates, and ticket aggregators show data from airline websites.<\/p>\n\n\n\n<p>It works this way: as an example, a user looks at a product card in an online store and wants to know how many pieces are left. A request is sent to the server. The API is needed so that the system correctly understands the request, and in response sends the necessary data from the server: stock balances from a database. Then the user will see on the site how many units of the product he is able to purchase.<\/p>\n\n\n\n<p>Depending on the tasks required for the project, developers implement the API in the REST, GraphQL, gRPC, or Websocket API format. Django can implement any of these API types:<\/p>\n\n\n\n<ul>\n<li>The most common request-response communication method between a client and a server is REST. The Django-rest-framework library makes it easy to implement a Django-based REST API.<\/li>\n\n\n\n<li>Sometimes REST doesn\u2019t allow you to receive data in a usable form. In this case, you can implement the API using GraphQL. This method is suitable if you need to make a selection in one answer and clarify which data is needed.<\/li>\n\n\n\n<li>gRPC and Websocket API can reduce network traffic load. Websocket also allows you to receive real-time updates. These protocols are used less often because their development is more complex. They are used where it\u2019s justified by the tasks required.<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-lazyblock-figure lazyblock-figure-YzEJL\"><figure class=\"article__figure \">\n        <div class=\"article__figure-img\" >\n        <img decoding=\"async\" src=\"https:\/\/orbitsoft.com\/blog\/wp-content\/uploads\/\u0421\u043d\u0438\u043c\u043e\u043a-\u044d\u043a\u0440\u0430\u043d\u0430-2022-09-16-\u0432-14.08.49.png\" alt=\"screenshot1\">\n    <\/div>\n                <figcaption><em>Connecting REST API and GraphQL in Django<\/em> <\/figcaption>\n    <\/figure><\/div>\n\n<div class=\"wp-block-lazyblock-heading3 lazyblock-heading3-njMV9\"><h3 class=\"article__h3\">Connect third party services<\/h3><\/div>\n\n\n<p> You may need to link the application to other services. For example, add data storage in the cloud, user authorization through social networks, processing uploaded videos, or sending   reports to email. <\/p>\n\n\n<div class=\"wp-block-lazyblock-figure lazyblock-figure-2oWwcU\"><figure class=\"article__figure \">\n        <div class=\"article__figure-img\" >\n        <img decoding=\"async\" src=\"https:\/\/orbitsoft.com\/blog\/wp-content\/uploads\/\u0421\u043d\u0438\u043c\u043e\u043a-\u044d\u043a\u0440\u0430\u043d\u0430-2022-10-14-\u0432-10.22.28.png\" alt=\"Telegram bot \">\n    <\/div>\n                <figcaption><em>You can connect the service with Telegram: write a bot that sends notifications to the administrator when there are errors in the service<\/em><\/figcaption>\n    <\/figure><\/div>\n\n\n<p> In Django, this is done quickly. You just need to connect the necessary extensions \u2014 additional libraries. <\/p>\n\n\n<div class=\"wp-block-lazyblock-figure lazyblock-figure-Z2cpiiR\"><figure class=\"article__figure \">\n        <div class=\"article__figure-img\" >\n        <img decoding=\"async\" src=\"https:\/\/orbitsoft.com\/blog\/wp-content\/uploads\/photo_2022-10-25_11-12-13-1.jpg\" alt=\"screenshot1\">\n    <\/div>\n                <figcaption><em>Connecting Additional Libraries to Django<\/em> <\/figcaption>\n    <\/figure><\/div>\n\n<div class=\"wp-block-lazyblock-heading3 lazyblock-heading3-ZeGK7v\"><h3 class=\"article__h3\">Connecting databases<\/h3><\/div>\n\n\n<p>Databases are an integral part of almost any Internet service. They store data about users, products, information about orders, pictures, videos, etc. Django supports the popular SQL databases MySQL, Postgres, Oracle, and MariaDB.<\/p>\n\n\n\n<p>For the application to work with the database, the programmer describes the parameters for connecting to it in the configuration file and installs the necessary adapter, i.e., a library that allows the application to interact with the database.<\/p>\n\n\n<div class=\"wp-block-lazyblock-figure lazyblock-figure-Z2rNaow\"><figure class=\"article__figure \">\n        <div class=\"article__figure-img\" >\n        <img decoding=\"async\" src=\"https:\/\/orbitsoft.com\/blog\/wp-content\/uploads\/\u0421\u043d\u0438\u043c\u043e\u043a-\u044d\u043a\u0440\u0430\u043d\u0430-2022-09-16-\u0432-08.14.47.png\" alt=\"screenshot3\">\n    <\/div>\n                <figcaption><em>The framework allows you to set several configurations in addition to <\/em> <em>default, for example, add local<\/em> <\/figcaption>\n    <\/figure><\/div>\n\n<div class=\"wp-block-lazyblock-heading3 lazyblock-heading3-Z1VeV8R\"><h3 class=\"article__h3\">Manage migrations<\/h3><\/div>\n\n\n<p>Sometimes project requirements change, and you need to make changes to the database structure to perform migrations, for example, add new tables or remove unused fields. Migrations allow you to change the current state of databases to meet new requirements, or return modifications to their original state.<\/p>\n\n\n\n<p>Django provides convenient management of migrations. It usually suffices to make changes to the model and run the \u201cmakemigrations\u201d command. The migration is created automatically in a special file, and can be applied with the migrate command.<\/p>\n\n\n<div class=\"wp-block-lazyblock-figure lazyblock-figure-Z9mErB\"><figure class=\"article__figure \">\n        <div class=\"article__figure-img\" >\n        <img decoding=\"async\" src=\"https:\/\/orbitsoft.com\/blog\/wp-content\/uploads\/\u0421\u043d\u0438\u043c\u043e\u043a-\u044d\u043a\u0440\u0430\u043d\u0430-2022-09-16-\u0432-09.55.25.png\" alt=\"screenshot4\">\n    <\/div>\n                <figcaption><em>This is what the generated Django migration file looks like<\/em> <\/figcaption>\n    <\/figure><\/div>\n\n<div class=\"wp-block-lazyblock-heading3 lazyblock-heading3-Zpu9xd\"><h3 class=\"article__h3\">Ensuring data security<\/h3><\/div>\n\n\n<p>To ensure data security, Django provides a set of built-in Middleware components. You can also include additional libraries. These tools allow you to set access rights and protect users&#8217; personal data and other information on web resources from attacks. For example, using the django-cors-headers library, you can allow access to a resource only from certain domains. <\/p>\n\n\n<div class=\"wp-block-lazyblock-figure lazyblock-figure-ZVIF2x\"><figure class=\"article__figure \">\n        <div class=\"article__figure-img\" >\n        <img decoding=\"async\" src=\"https:\/\/orbitsoft.com\/blog\/wp-content\/uploads\/\u0421\u043d\u0438\u043c\u043e\u043a-\u044d\u043a\u0440\u0430\u043d\u0430-2022-09-16-\u0432-14.19.26.png\" alt=\"screenshot5\">\n    <\/div>\n                <figcaption><em>Middleware \u2014 software that filters the incoming stream of requests to a resource. For example, it can check how often requests are received from one API address, and block suspicious ones<\/em> <\/figcaption>\n    <\/figure><\/div>\n\n<div class=\"wp-block-lazyblock-heading lazyblock-heading-Z2hwT4U\"><h2 class=\"article__h\">When should you use Django? <\/h2><\/div>\n\n\n<ul>\n<li>A medium-sized project with a monolithic architecture is just right for Django.<\/li>\n\n\n\n<li>If there is no clear technical task, you can build a prototype and release an MVP, and then add details to the project.<\/li>\n\n\n\n<li>When fast development is required. It\u2019s ready-made framework solutions allow you to concentrate on completing the task, and not be distracted by developing unnecessary code.<\/li>\n\n\n\n<li>If you need to create a CMS, CRM, or email-mailing service.<\/li>\n\n\n\n<li>When you connect third-party services to the project: social networks, cloud storage, etc.<\/li>\n\n\n\n<li>To set up interaction with a database. Django ORM is a convenient functional tool for working with databases.<\/li>\n\n\n\n<li>To implement APIs. Out-of-the-box templates and methods for creating different kinds of APIs make it fast.<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-lazyblock-banner lazyblock-banner-Z2lLsHq\"><div \n  class=\"banner\n   \n  \" \n  >\n    <div class=\"banner__body\">\n        <h2 class=\"banner__h\">We\u00a0develop and implement:<\/h2>\n        <div class=\"banner__content\">\n            <ul>\n<li aria-level=\"1\">Solutions to\u00a0optimize work with Big Data: large databases, advertising platforms<\/li>\n<li aria-level=\"1\">Information systems using Artificial Intelligence and Machine Learning<\/li>\n<li aria-level=\"1\">Blockchain services, systems and applications, implementation of\u00a0smart contracts<\/li>\n<li aria-level=\"1\">Secure data exchange systems<\/li>\n<\/ul>        <\/div>\n                            <div \n              class=\"banner__button button js-form-modal\n               button_style_light-on-promo2\">\n              Get a free consultation                          <\/div>\n            <\/div>\n    <div class=\"banner__photo\">\n        <img decoding=\"async\" src=\"\" alt=\"\" class=\"banner__img\">\n    <\/div>\n<\/div><\/div>\n\n<div class=\"wp-block-lazyblock-heading lazyblock-heading-Z2gmA5Y\"><h2 class=\"article__h\">Projects Django is not suitable for: <\/h2><\/div>\n\n\n<ul>\n<li>If the project is very small or databases are not used. Django is a Python monolith. For simple applications it has a lot of superfluous things, such as components for working with statics, a built-in admin panel, and functionality for rendering templates.<\/li>\n\n\n\n<li>If low-level customization or a specific project architecture is required, Django&#8217;s capabilities are insufficient for this.<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-lazyblock-heading lazyblock-heading-Z1l7QrG\"><h2 class=\"article__h\">A practical example from OrbitSoft  <\/h2><\/div>\n\n\n<p>We were contacted by the owner of a platform for organizing distance learning. Client companies place their training courses, tests, webinars on the platform. Users take these courses and complete assignments to test their knowledge. The data received needed to be processed and displayed in the personal accounts of users. But the platform wasn\u2019t able to store statistics and calculate the results of completed tasks.<\/p>\n\n\n\n<p>We developed a separate data processing service. It receives information about each user from the platform server, sums up the scores for all completed tasks, and sends the results to the platform client server. For this we:<\/p>\n\n\n\n<ul>\n<li>Connected the REST API to receive data from the learning platform<\/li>\n\n\n\n<li>Set up processing of received data<\/li>\n\n\n\n<li>Connected a database to store intermediate results<\/li>\n\n\n\n<li>Implemented background execution of pending tasks through Celery, a library for executing tasks from queues<\/li>\n\n\n\n<li>Connected a bot to Telegram to send error messages when performing tasks<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-lazyblock-figure lazyblock-figure-Z1X3Q0B\"><figure class=\"article__figure \">\n        <div class=\"article__figure-img\" >\n        <img decoding=\"async\" src=\"https:\/\/orbitsoft.com\/blog\/wp-content\/uploads\/image_eng.png\" alt=\"Scheme1\">\n    <\/div>\n                <figcaption><em>Scheme of the data processing service<\/em> <\/figcaption>\n    <\/figure><\/div>","protected":false},"excerpt":{"rendered":"<p>Python is a versatile programming language with a simple syntax and a huge community. With it, you can solve tasks of various sizes \u2013 from creating bots, to developing applications and websites, and even machine learning. Many frameworks and libraries have been developed in Python with ready-made modules and code packages. Programmers use them to [&hellip;]<\/p>\n","protected":false},"author":214,"featured_media":36376,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[195],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>What tasks we solve with Django, a Python web framework - OrbitSoft Blog<\/title>\n<meta name=\"description\" content=\"The article tells what are the advantages of the Django framework, in which projects and for what tasks it is worth using, and what are the limitations\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/orbitsoft.com\/blog\/django\/\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"What tasks we solve with Django, a Python web framework - OrbitSoft Blog\" \/>\n<meta name=\"twitter:description\" content=\"The article tells what are the advantages of the Django framework, in which projects and for what tasks it is worth using, and what are the limitations\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/orbitsoft.com\/blog\/wp-content\/uploads\/image_2022-10-24_18-49-44.png\" \/>\n<meta name=\"twitter:creator\" content=\"@orbitsoft\" \/>\n<meta name=\"twitter:site\" content=\"@orbitsoft\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"elevina\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"What tasks we solve with Django, a Python web framework - OrbitSoft Blog","description":"The article tells what are the advantages of the Django framework, in which projects and for what tasks it is worth using, and what are the limitations","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:\/\/orbitsoft.com\/blog\/django\/","twitter_card":"summary_large_image","twitter_title":"What tasks we solve with Django, a Python web framework - OrbitSoft Blog","twitter_description":"The article tells what are the advantages of the Django framework, in which projects and for what tasks it is worth using, and what are the limitations","twitter_image":"https:\/\/orbitsoft.com\/blog\/wp-content\/uploads\/image_2022-10-24_18-49-44.png","twitter_creator":"@orbitsoft","twitter_site":"@orbitsoft","twitter_misc":{"Written by":"elevina","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/orbitsoft.com\/blog\/django\/","url":"https:\/\/orbitsoft.com\/blog\/django\/","name":"What tasks we solve with Django, a Python web framework - OrbitSoft Blog","isPartOf":{"@id":"https:\/\/orbitsoft.com\/blog\/#website"},"datePublished":"2022-12-23T07:42:00+00:00","dateModified":"2024-03-06T11:47:16+00:00","author":{"@id":"https:\/\/orbitsoft.com\/blog\/#\/schema\/person\/f96c7f7c1bcb1cdf7e1750794548b6fa"},"description":"The article tells what are the advantages of the Django framework, in which projects and for what tasks it is worth using, and what are the limitations","breadcrumb":{"@id":"https:\/\/orbitsoft.com\/blog\/django\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/orbitsoft.com\/blog\/django\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/orbitsoft.com\/blog\/django\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/orbitsoft.com\/blog\/"},{"@type":"ListItem","position":2,"name":"What tasks we solve with Django, a Python web framework"}]},{"@type":"WebSite","@id":"https:\/\/orbitsoft.com\/blog\/#website","url":"https:\/\/orbitsoft.com\/blog\/","name":"OrbitSoft Blog","description":"Discover the latest in news and resources for OrbitSoft","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/orbitsoft.com\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/orbitsoft.com\/blog\/#\/schema\/person\/f96c7f7c1bcb1cdf7e1750794548b6fa","name":"elevina","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/orbitsoft.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/9f569b41ea8902fc571542fc77005a24?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/9f569b41ea8902fc571542fc77005a24?s=96&d=mm&r=g","caption":"elevina"},"url":"https:\/\/orbitsoft.com\/blog\/author\/elevina\/"}]}},"_links":{"self":[{"href":"https:\/\/orbitsoft.com\/blog\/wp-json\/wp\/v2\/posts\/36363"}],"collection":[{"href":"https:\/\/orbitsoft.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/orbitsoft.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/orbitsoft.com\/blog\/wp-json\/wp\/v2\/users\/214"}],"replies":[{"embeddable":true,"href":"https:\/\/orbitsoft.com\/blog\/wp-json\/wp\/v2\/comments?post=36363"}],"version-history":[{"count":4,"href":"https:\/\/orbitsoft.com\/blog\/wp-json\/wp\/v2\/posts\/36363\/revisions"}],"predecessor-version":[{"id":36947,"href":"https:\/\/orbitsoft.com\/blog\/wp-json\/wp\/v2\/posts\/36363\/revisions\/36947"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/orbitsoft.com\/blog\/wp-json\/wp\/v2\/media\/36376"}],"wp:attachment":[{"href":"https:\/\/orbitsoft.com\/blog\/wp-json\/wp\/v2\/media?parent=36363"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/orbitsoft.com\/blog\/wp-json\/wp\/v2\/categories?post=36363"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/orbitsoft.com\/blog\/wp-json\/wp\/v2\/tags?post=36363"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}