{"id":53653,"date":"2019-12-07T00:00:00","date_gmt":"2019-12-06T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/vypusk-web-frejmvorka-django-3-0"},"modified":"2020-02-18T14:01:35","modified_gmt":"2020-02-18T11:01:35","slug":"vypusk-web-frejmvorka-django-3-0","status":"publish","type":"post","link":"https:\/\/prohoster.info\/en\/blog\/news\/vypusk-web-frejmvorka-django-3-0","title":{"rendered":"Release of the web framework Django 3.0","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><noindex><a rel=\"nofollow\" href=\"https:\/\/www.djangoproject.com\/weblog\/2019\/dec\/02\/django-3-released\/\">Took place<\/a><\/noindex>  release of the web framework <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.djangoproject.com\/en\/3.0\/releases\/3.0\/\">Django 3.0<\/a><\/noindex>, written in Python and designed for web application development. The Django 3.0 branch is classified as a release with a standard support period and will <noindex><a rel=\"nofollow\" href=\"https:\/\/www.djangoproject.com\/download\/#supported-versions\">receive<\/a><\/noindex> updates until April 2021. The LTS branch 2.22 will be supported until April 2022, while the 1.11 branch will be supported until April 2020. Support for the 2.1 branch has ended. <\/p>\n<p>Key <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.djangoproject.com\/en\/3.0\/releases\/3.0\/\">improvements<\/a><\/noindex>: <\/p>\n<ul>\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.djangoproject.com\/en\/3.0\/howto\/deployment\/asgi\/\">Provided<\/a><\/noindex> support for asynchronous operation with execution in the form of an ASGI application. The interface <noindex><a rel=\"nofollow\" href=\"https:\/\/asgi.readthedocs.io\/\">ASGI<\/a><\/noindex> (Asynchronous Server Gateway Interface) is developed as a replacement for WSGI, aimed at ensuring interaction between servers, frameworks, and applications that support asynchronous operation. Support for launching using WSGI is retained, and the related asynchronous code is included only when running in ASGI-based environments.\n<p>An individual event processing loop is implemented for asynchronous mode, which does not allow the invocation of code marked as 'async unsafe'. Such code includes, for example, operations with the database (ORM), which cannot be used in an asynchronous context (in this case, a SynchronousOnlyOperation error will be displayed) and should be moved to a separate synchronous thread.<\/p>\n<li class=\"l\"> Specialized enumerated types TextChoices, IntegerChoices, and Choices have been added, which can <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.djangoproject.com\/en\/3.0\/ref\/models\/fields\/#field-choices-enum-types\">to use<\/a><\/noindex> be used to define text and integer fields in a model, for instance, when there is a need to store sets of readable labels that translate to specific values:\n<p>   class YearInSchool(models.TextChoices):<br \/>\n        FRESHMAN = 'FR', _('_('Freshman')')<br \/>\n        SOPHOMORE = 'SO', _('_('Sophomore')')<br \/>\n        JUNIOR = 'JR', _('_('Junior')')<br \/>\n        SENIOR = 'SR', _('_('Senior')')<br \/>\n        GRADUATE = 'GR', _('_('Graduate')')<\/p>\n<li class=\"l\"> The ability to specify expressions that output <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.djangoproject.com\/en\/3.0\/ref\/models\/fields\/#django.db.models.BooleanField\">BooleanField<\/a><\/noindex>, directly in QuerySet filters without prior annotation before applying for annotation filtering has been provided.\n<li class=\"l\"> Official support for MariaDB 10.1 and newer releases has been ensured.\n<li class=\"l\"> For PostgreSQL, the class <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.djangoproject.com\/en\/3.0\/ref\/contrib\/postgres\/constraints\/#django.contrib.postgres.constraints.ExclusionConstraint\">ExclusionConstraint<\/a><\/noindex> has been implemented for using constraints based on expressions <noindex><a rel=\"nofollow\" href=\"https:\/\/www.postgresql.org\/docs\/9.0\/ddl-constraints.html\">EXCLUDE<\/a><\/noindex>;\n<li class=\"l\"> Support for Python 3.5 has been discontinued.\n<\/ul>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Source: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=51989\">opennet.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0421\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 web-\u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0430 Django 3.0, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u0433\u043e \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Python \u0438 \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u043e\u0433\u043e \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432\u0435\u0431-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439. \u0412\u0435\u0442\u043a\u0430 Django 3.0 \u043e\u0442\u043d\u0435\u0441\u0435\u043d\u0430 \u043a \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u0438 \u0432\u044b\u043f\u0443\u0441\u043a\u043e\u0432 \u0441 \u043e\u0431\u044b\u0447\u043d\u044b\u043c \u0441\u0440\u043e\u043a\u043e\u043c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0438 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u043e \u0430\u043f\u0440\u0435\u043b\u044f 2021 \u0433\u043e\u0434\u0430. LTS-\u0432\u0435\u0442\u043a\u0430 2.22 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u043e \u0430\u043f\u0440\u0435\u043b\u044f 2022 \u0433\u043e\u0434\u0430, \u0430 \u0432\u0435\u0442\u043a\u0430 1.11 \u0434\u043e \u0430\u043f\u0440\u0435\u043b\u044f 2020 \u0433\u043e\u0434\u0430. \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0432\u0435\u0442\u043a\u0438 2.1 \u043f\u0440\u0435\u043a\u0440\u0430\u0449\u0435\u043d\u0430. \u041a\u043b\u044e\u0447\u0435\u0432\u044b\u0435 \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f: \u041f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0430 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-53653","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0421\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 web-\u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0430\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/en\/blog\/news\/vypusk-web-frejmvorka-django-3-0\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a web-\u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0430 Django 3.0 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0421\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 web-\u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0430\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/en\/blog\/news\/vypusk-web-frejmvorka-django-3-0\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-12-06T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:01:35+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Release of the web framework Django 3.0 | ProHoster","description":"The release of the web framework has taken place","canonical_url":"https:\/\/prohoster.info\/en\/blog\/news\/vypusk-web-frejmvorka-django-3-0","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a web-\u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0430 Django 3.0 | ProHoster","og:description":"\u0421\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 web-\u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0430","og:url":"https:\/\/prohoster.info\/en\/blog\/news\/vypusk-web-frejmvorka-django-3-0","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-12-06T21:00:00+00:00","article:modified_time":"2020-02-18T11:01:35+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"53653","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-24 08:16:22","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 20:21:19","updated":"2026-01-24 08:16:22","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/53653","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/comments?post=53653"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/53653\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/media?parent=53653"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/categories?post=53653"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/tags?post=53653"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}