{"id":280310,"date":"2022-09-20T06:03:34","date_gmt":"2022-09-20T05:03:34","guid":{"rendered":"https:\/\/blog.jetbrains.com\/pycharm\/2022\/08\/flask-tutorial\/"},"modified":"2022-09-20T06:19:58","modified_gmt":"2022-09-20T05:19:58","slug":"flask-tutorial","status":"publish","type":"pycharm","link":"https:\/\/blog.jetbrains.com\/ko\/pycharm\/2022\/09\/flask-tutorial\/","title":{"rendered":"Flask \ud29c\ud1a0\ub9ac\uc5bc: PyCharm\uc5d0\uc11c Flask \uc560\ud50c\ub9ac\ucf00\uc774\uc158 \ub9cc\ub4e4\uae30"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_17 counter-hierarchy ez-toc-transparent\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\">\ubaa9\ucc28<\/p>\n<p><\/p>\n<\/div>\n<nav>\n<ul class=\"ez-toc-list ez-toc-list-level-1\">\n<li class=\"ez-toc-page-1 ez-toc-heading-level-2\"><a class=\"ez-toc-link ez-toc-heading-1\" title=\"How to create a new Flask project in PyCharm\" href=\"https:\/\/blog.jetbrains.com\/pycharm\/2022\/08\/flask-tutorial\/#How_to_create_a_new_Flask_project_in_PyCharm\">How to create a new Flask project in PyCharm<\/a><\/li>\n<li class=\"ez-toc-page-1 ez-toc-heading-level-2\"><a class=\"ez-toc-link ez-toc-heading-2\" title=\"How to set up an environment for your project\" href=\"https:\/\/blog.jetbrains.com\/pycharm\/2022\/08\/flask-tutorial\/#How_to_set_up_an_environment_for_your_project\">How to set up an environment for your project<\/a><\/li>\n<li class=\"ez-toc-page-1 ez-toc-heading-level-2\"><a class=\"ez-toc-link ez-toc-heading-3\" title=\"How to setup a template language\" href=\"https:\/\/blog.jetbrains.com\/pycharm\/2022\/08\/flask-tutorial\/#How_to_setup_a_template_language\">How to setup a template language<\/a><\/li>\n<li class=\"ez-toc-page-1 ez-toc-heading-level-2\"><a class=\"ez-toc-link ez-toc-heading-4\" title=\"How to set up a run configuration for your Flask application\" href=\"https:\/\/blog.jetbrains.com\/pycharm\/2022\/08\/flask-tutorial\/#How_to_set_up_a_run_configuration_for_your_Flask_application\">How to set up a run configuration for your Flask application<\/a>\n<ul class=\"ez-toc-list-level-3\">\n<li class=\"ez-toc-heading-level-3\"><a class=\"ez-toc-link ez-toc-heading-5\" title=\"How you can change the default port\" href=\"https:\/\/blog.jetbrains.com\/pycharm\/2022\/08\/flask-tutorial\/#How_you_can_change_the_default_port\">How you can change the default port<\/a><\/li>\n<\/ul>\n<\/li>\n<li class=\"ez-toc-page-1 ez-toc-heading-level-2\"><a class=\"ez-toc-link ez-toc-heading-6\" title=\"Working with templates\" href=\"https:\/\/blog.jetbrains.com\/pycharm\/2022\/08\/flask-tutorial\/#Working_with_templates\">Working with templates<\/a>\n<ul class=\"ez-toc-list-level-3\">\n<li class=\"ez-toc-heading-level-3\"><a class=\"ez-toc-link ez-toc-heading-7\" title=\"How to create a template file from usage\" href=\"https:\/\/blog.jetbrains.com\/pycharm\/2022\/08\/flask-tutorial\/#How_to_create_a_template_file_from_usage\">How to create a template file from usage<\/a><\/li>\n<li class=\"ez-toc-page-1 ez-toc-heading-level-3\"><a class=\"ez-toc-link ez-toc-heading-8\" title=\"How to use a live template\" href=\"https:\/\/blog.jetbrains.com\/pycharm\/2022\/08\/flask-tutorial\/#How_to_use_a_live_template\">How to use a live template<\/a><\/li>\n<\/ul>\n<\/li>\n<li class=\"ez-toc-page-1 ez-toc-heading-level-2\"><a class=\"ez-toc-link ez-toc-heading-9\" title=\"How to add a templates folder to your project\" href=\"https:\/\/blog.jetbrains.com\/pycharm\/2022\/08\/flask-tutorial\/#How_to_add_a_templates_folder_to_your_project\">How to add a templates folder to your project<\/a><\/li>\n<li class=\"ez-toc-page-1 ez-toc-heading-level-2\"><a class=\"ez-toc-link ez-toc-heading-10\" title=\"How to associate an SQL database with your Flask project (and why you might do so)\" href=\"https:\/\/blog.jetbrains.com\/pycharm\/2022\/08\/flask-tutorial\/#How_to_associate_an_SQL_database_with_your_Flask_project_and_why_you_might_do_so\">How to associate an SQL database with your Flask project (and why you might do so)<\/a><\/li>\n<\/ul>\n<\/nav>\n<\/div>\n<p>Python\uc73c\ub85c \uac04\ub2e8\ud55c \uc6f9 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \ube4c\ub4dc\ud558\ub824\ub294 \uacbd\uc6b0 Flask \ub9c8\uc774\ud06c\ub85c\ud504\ub808\uc784\uc6cc\ud06c\uac00 \uc544\ub9c8\ub3c4 \ucd5c\uace0\uc758 \uc120\ud0dd \uc911 \ud558\ub098\uc77c \uac83\uc785\ub2c8\ub2e4. Flask\ub97c \uc0ac\uc6a9\ud558\uba74 \ub2e8 \ud558\ub098\uc758 Python \ud30c\uc77c\ub85c \uc2e4\uc81c \uc6f9 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \ube4c\ub4dc\ud558\uace0 \ud544\uc694\ud55c \uacbd\uc6b0 \ud655\uc7a5\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.&nbsp;<\/p>\n<p>PyCharm\uc5d0\uc11c Flask \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \ube4c\ub4dc\ud558\ub294 \uac83\uc774 \ud6e8\uc52c \uc27d\uc2b5\ub2c8\ub2e4. PyCharm\uc740 \ud2b9\uc815(\uc801\uc808\ud55c) \ub514\ub809\ud130\ub9ac \uad6c\uc870 \ubc0f \uc124\uc815 \uc0dd\uc131\uc744 \ucc98\ub9ac\ud558\uace0 Flask, Jinja \ubc0f <a href=\"https:\/\/www.palletsprojects.com\/p\/werkzeug\/\" target=\"_blank\" rel=\"noopener\">Werkzeug<\/a> WSGI \ud234\ud0b7\uc774 \uc131\uacf5\uc801\uc73c\ub85c \uc124\uce58\ub418\ub3c4\ub85d \ud569\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-269572\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/08\/Blog_Featured_image_1280x600-1.png\" alt=\"\" width=\"1280\" height=\"600\"><\/figure>\n<p>\uc774 \ub9e4\uc6b0 \uc9e7\uc740 Flask \ud29c\ud1a0\ub9ac\uc5bc\uc5d0\uc11c\ub294 Nafiul Islam\uc774 \ub2e8 1\ubd84 \ub9cc\uc5d0 \uac04\ub2e8\ud55c Flask \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \uc124\uc815\ud558\uace0 \uc720\uc775\ud55c \ub3c4\uc6c0\uc744 \uc904 PyCharm \ud234\ud0b7\uc744 \ubcf4\uc5ec\uc90d\ub2c8\ub2e4.&nbsp;<\/p>\n<p>\uc774 \ud29c\ud1a0\ub9ac\uc5bc\uc5d0\uc11c\ub294 \ub2e4\uc74c\uc744 \uc218\ud589\ud558\ub294 \ubc29\ubc95\uc744 \ubcf4\uc5ec\uc90d\ub2c8\ub2e4.<\/p>\n<ul>\n<li>PyCharm\uc5d0\uc11c Flask \ud504\ub85c\uc81d\ud2b8\b \ub9cc\ub4e4\uae30<\/li>\n<li>\ud504\ub85c\uc81d\ud2b8 \uc791\uc5c5\uc744 \uc704\ud55c \uac00\uc0c1 \ud658\uacbd\uc744 \uc124\uc815\ud558\uae30<\/li>\n<li>Flask \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc5d0 \ub300\ud55c \uc2e4\ud589 \uad6c\uc131\uc744 \uc124\uc815<\/li>\n<li>PyCharm\uc5d0\uc11c \ud15c\ud50c\ub9bf\uc744 \uc774\uc6a9\ud574 \ud6a8\uc728\uc801\uc73c\ub85c \uc791\uc5c5\ud558\uae30<\/li>\n<\/ul>\n<p><iframe loading=\"lazy\" title=\"YouTube \ub3d9\uc601\uc0c1 \ud50c\ub808\uc774\uc5b4\" src=\"https:\/\/www.youtube.com\/embed\/TbUqQGzR2cU\" width=\"700\" height=\"400\" frameborder=\"0\" allowfullscreen=\"allowfullscreen\"><\/iframe><\/p>\n<p><a href=\"https:\/\/youtu.be\/TbUqQGzR2cU\" target=\"_blank\" rel=\"noopener\">YouTube\uc5d0\uc11c \ubcf4\uae30<\/a><\/p>\n<h2><span id=\"How_to_create_a_new_Flask_project_in_PyCharm\" class=\"ez-toc-section\"><\/span>PyCharm\uc5d0\uc11c \uc0c8 Flask \ud504\ub85c\uc81d\ud2b8\ub97c \ub9cc\ub4dc\ub294 \ubc29\ubc95<\/h2>\n<p>PyCharm\uc5d0\uc11c \uc0c8 Flask \ud504\ub85c\uc81d\ud2b8\ub97c \ub9cc\ub4dc\ub294 \ubc29\ubc95\uc5d0\ub294 \ub450 \uac00\uc9c0\uac00 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p>\uba54\uc778 \uba54\ub274\ub85c \uc774\ub3d9\ud558\uc5ec <em>File(\ud30c\uc77c) | New Project(\uc0c8 \ud504\ub85c\uc81d\ud2b8)<\/em>\ub97c \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-269711\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/08\/Create_new_project_1.png\" alt=\"\" width=\"1549\" height=\"1080\"><\/figure>\n<p>\uc2dc\uc791 \ud654\uba74\uc5d0\uc11c &#8216;New Project&#8217;\ub97c \ud074\ub9ad\ud560 \uc218\ub3c4 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-269723\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/08\/Create_new_project_2.png\" alt=\"\" width=\"1549\" height=\"1080\"><\/figure>\n<p>\ub450 \uacbd\uc6b0 \ubaa8\ub450 New Project \ub300\ud654\uc0c1\uc790\ub85c \uc774\ub3d9\ud558\uc5ec, \uc5ec\uae30\uc5d0 \uc788\ub294 \uc67c\ucabd \ud328\ub110\uc758 \ud504\ub85c\uc81d\ud2b8 \uc720\ud615 \ubaa9\ub85d\uc5d0\uc11c Flask\ub97c \uc120\ud0dd\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-269734\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/08\/New_project_dialog.png\" alt=\"\" width=\"1549\" height=\"1080\"><\/figure>\n<p>New Project \ub300\ud654\uc0c1\uc790\uc5d0\uc11c <em>Location(\uc704\uce58)<\/em>\uc5d0 \ud504\ub85c\uc81d\ud2b8 \uc704\uce58 \uacbd\ub85c\ub97c \uc9c0\uc815\ud574\uc57c \ud569\ub2c8\ub2e4.<\/p>\n<h2><span id=\"How_to_set_up_an_environment_for_your_project\" class=\"ez-toc-section\"><\/span>\ud504\ub85c\uc81d\ud2b8 \ud658\uacbd\uc744 \uc124\uc815\ud558\ub294 \ubc29\ubc95<\/h2>\n<p>\ub2e4\uc74c \ub2e8\uacc4\ub294 \uc774 \ud2b9\uc815 \ud504\ub85c\uc81d\ud2b8\uc5d0 \uc0ac\uc6a9\ud560 \uc778\ud130\ud504\ub9ac\ud130\ub97c \uc120\ud0dd\ud558\ub294 \uac83\uc785\ub2c8\ub2e4. \ub2e4\ub978 \ud504\ub85c\uc81d\ud2b8\uc5d0 \ub300\ud574 \uc774\ubbf8 \uc124\uc815\ud55c \uae30\uc874 \uc778\ud130\ud504\ub9ac\ud130\ub97c \uc0ac\uc6a9\ud558\uac70\ub098 \uc0c8 \uc778\ud130\ud504\ub9ac\ud130\ub97c \ub9cc\ub4e4 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc0c8\ub85c\uc6b4 \uc778\ud130\ud504\ub9ac\ud130\ub97c \uc124\uc815\ud560 \ub54c \uac00\uc0c1 \ud658\uacbd, Pipenv, Poetry \ub610\ub294 Conda \ub4f1 \uc6d0\ud558\ub294 \ud658\uacbd\uc744 \uc120\ud0dd\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-269766\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/08\/Selecting_env.png\" alt=\"\" width=\"1549\" height=\"1080\"><\/figure>\n<p>\ub610\ud55c \uc0c8 \uac00\uc0c1 \ud658\uacbd\uc744 \ubc30\uce58\ud560 \uc704\uce58\uc640 \uc774 \ud658\uacbd\uc758 \uae30\ubcf8 \uc778\ud130\ud504\ub9ac\ud130\ub97c \uc9c0\uc815\ud574\uc57c \ud569\ub2c8\ub2e4.&nbsp;<\/p>\n<p>\uc2dc\uc2a4\ud15c\uc758 \uae00\ub85c\ubc8c Python\uc5d0 \uc774\ubbf8 \uc124\uce58\ub41c \ubaa8\ub4e0 \ud328\ud0a4\uc9c0\ub97c \uac00\uc0c1 \ud658\uacbd\uc5d0 \ucd94\uac00\ud558\ub824\uba74 <em>Inherit global site-packages(\uae00\ub85c\ubc8c \uc0ac\uc774\ud2b8 \ud328\ud0a4\uc9c0 \uc0c1\uc18d)<\/em> \ud655\uc778\ub780\uc744 \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/p>\n<p>\ub2e4\ub978 \ud504\ub85c\uc81d\ud2b8\uc5d0 \uc774 \ud658\uacbd\uc744 \uc0ac\uc6a9\ud558\ub824\ub294 \uacbd\uc6b0, <em>Make available to all projects(\ubaa8\ub4e0 \ud504\ub85c\uc81d\ud2b8\uc5d0\uc11c \uc0ac\uc6a9\ud560 \uc218 \uc788\ub3c4\ub85d \uc124\uc815)<\/em> \uccb4\ud06c\ubc15\uc2a4\ub97c \uc120\ud0dd\ud558\uba74 \ub2e4\uc74c\uc5d0 \uc0c8 \ud504\ub85c\uc81d\ud2b8\uc5d0 \ub300\ud55c Python \uc778\ud130\ud504\ub9ac\ud130\ub97c \uc124\uc815\ud560 \ub54c \uc774 \ud658\uacbd\uc744 \uc120\ud0dd\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<h2><span id=\"How_to_setup_a_template_language\" class=\"ez-toc-section\"><\/span>\ud15c\ud50c\ub9bf \uc5b8\uc5b4\ub97c \uc124\uc815\ud558\ub294 \ubc29\ubc95<\/h2>\n<p>\ud658\uacbd \uc124\uc815\uc744 \ub9c8\uce5c \ud6c4\uc5d0\ub294 \ud15c\ud50c\ub9bf \uc5b8\uc5b4\uc640 \ud15c\ud50c\ub9bf \ud3f4\ub354\uc758 \uc774\ub984\uc744 \uc9c0\uc815\ud558\uace0 \uc2f6\uc744 \uc218\ub3c4 \uc788\uc2b5\ub2c8\ub2e4. \uc774\ub7f4 \uacbd\uc6b0 New Project \ub300\ud654\uc0c1\uc790\ub97c \uc774\uc6a9\ud558\uba74 \ub429\ub2c8\ub2e4. \uae30\ubcf8\uc801\uc73c\ub85c PyCharm\uc740 Jinja\ub97c \ud15c\ud50c\ub9bf \uc5b8\uc5b4\ub85c \uc124\uc815\ud558\uace0 \ud15c\ud50c\ub9bf \ud3f4\ub354\uc758 \uc774\ub984\uc744&nbsp;&#8216;templates&#8217;\uc73c\ub85c \uc9c0\uc815\ud569\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-269778\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/08\/templates.png\" alt=\"\" width=\"1549\" height=\"1080\"><\/figure>\n<p>\uc774\uc81c \uc0c8\ub85c\uc6b4 Flask \ud504\ub85c\uc81d\ud2b8\ub97c \uc2dc\uc791\ud560 \uc900\ube44\uac00 \ub418\uc5c8\uc2b5\ub2c8\ub2e4! \ub300\ud654\uc0c1\uc790\uc758 \uc624\ub978\ucabd \ud558\ub2e8 \ubaa8\uc11c\ub9ac\uc5d0 \uc788\ub294 &#8216;Create'(\uc0dd\uc131) \ubc84\ud2bc\uc744 \uc78a\uc9c0 \ub9d0\uace0 \ud074\ub9ad\ud558\uc138\uc694. PyCharm\uc740 \ud2b9\uc815 \ub514\ub809\ud130\ub9ac \uad6c\uc870\uc640 \uc804\uc6a9 \ud15c\ud50c\ub9bf \ud3f4\ub354\uac00 \uc790\ub3d9\uc73c\ub85c \uc801\uc6a9\ub41c Flask \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \ub9cc\ub4e4\uace0 \uc544\uc9c1 \uc124\uce58\ub418\uc5b4 \uc788\uc9c0 \uc54a\uc740 \uacbd\uc6b0 \uc2dc\uc2a4\ud15c\uc5d0 Flask\ub97c \uc124\uce58\ud569\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-269794\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/08\/Flask_project_overview.png\" alt=\"\" width=\"1549\" height=\"992\"><\/figure>\n<h2><span id=\"How_to_set_up_a_run_configuration_for_your_Flask_application\" class=\"ez-toc-section\"><\/span>Flask \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc758 \uc2e4\ud589 \uad6c\uc131\uc744 \uc124\uc815\ud558\ub294 \ubc29\ubc95<\/h2>\n<p>\uc0c8 Flask \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc774 PyCharm\uc5d0 \uc758\ud574 \ubbf8\ub9ac \uad6c\uc131\ub418\uba74 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc774 \uc81c\ub300\ub85c \uc791\ub3d9\ud558\uace0 \uc124\uc815\uc774 \uc62c\ubc14\ub978\uc9c0 \ud14c\uc2a4\ud2b8\ud558\ub294 \ub370 \uc0ac\uc6a9\ud560 \uc218 \uc788\ub294 \uc2a4\ud141 Python \uc2a4\ud06c\ub9bd\ud2b8\uc778 <strong>app.py<\/strong> \ud30c\uc77c\uc774 \uc5f4\ub9b0 \uc0c1\ud0dc\ub85c \ud45c\uc2dc\ub429\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-269805\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/08\/running_app_py.png\" alt=\"\" width=\"1549\" height=\"992\"><\/figure>\n<p>macOS Monterey\ub97c \uc0ac\uc6a9\ud558\ub294 \uacbd\uc6b0 app.py\ub97c \uc2e4\ud589\ud560 \uae30\ubcf8 \ud3ec\ud2b8\ub97c \ubcc0\uacbd\ud574\uc57c \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uadf8\ub807\uc9c0 \uc54a\uc73c\uba74 \uc624\ub958\uac00 \ubc1c\uc0dd\ud569\ub2c8\ub2e4. \uacc4\uc18d\ud574\uc11c \ud3ec\ud2b8\ub97c \ubcc0\uacbd\ud558\ub294 \ubc29\ubc95\uc744 \uc77d\uc5b4\ubcf4\uc138\uc694.&nbsp;<\/p>\n<p>\uc2e4\ud589 \uad6c\uc131\uc744 \uc218\ub3d9\uc73c\ub85c \uad6c\uc131\ud558\ub824\uba74 \uc5ec\ubc31\uc758 <em>run(\uc2e4\ud589)<\/em> \ubc84\ud2bc \uc606\uc5d0 \uc788\ub294 \ub4dc\ub86d\ub2e4\uc6b4 \uba54\ub274\uc5d0\uc11c <em>Edit run configuration(\uc2e4\ud589 \uad6c\uc131 \ud3b8\uc9d1)<\/em>\uc744 \uc120\ud0dd\ud558\uba74 \ub429\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-269816\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/08\/Editt_run_configuration.png\" alt=\"\" width=\"1549\" height=\"992\"><\/figure>\n<p><em>Run\/Debug Configurations(\uc2e4\ud589\/\ub514\ubc84\uadf8 \uad6c\uc131)<\/em> \ub300\ud654\uc0c1\uc790\uc5d0\uc11c <em>Add new run configuration(\uc0c8 \uc2e4\ud589 \uad6c\uc131 \ucd94\uac00)<\/em>\uc744 \ud074\ub9ad\ud558\uace0(\ub610\ub294 \uac04\ub2e8\ud788 \ub300\ud654\uc0c1\uc790\uc758 \uc67c\ucabd \uc0c1\ub2e8 \ubaa8\uc11c\ub9ac\uc5d0 \uc788\ub294 <em>\ub354\ud558\uae30<\/em>\ub97c \ub204\ub984) \uad6c\uc131 \ubaa9\ub85d\uc5d0\uc11c <em>Flask server(Flask \uc11c\ubc84)<\/em>\ub97c \uc120\ud0dd\ud574\uc57c \ud569\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-269863\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/08\/add_config-1.png\" alt=\"\" width=\"1549\" height=\"992\"><\/figure>\n<p><em>Target(\ub300\uc0c1)<\/em> \ubc0f <em>Application(\uc560\ud50c\ub9ac\ucf00\uc774\uc158)<\/em> \ud544\ub4dc\uc758 \uac12\uc744 \uc9c0\uc815\ud574\uc57c \ud569\ub2c8\ub2e4.<\/p>\n<p>\uc2e4\ud589\ud558\ub824\ub294 \ub0b4\uc6a9\uc5d0 \ub530\ub77c <strong><em>Target<\/em><\/strong> \ud544\ub4dc\uc5d0 \ub2e4\uc591\ud55c \ub300\uc0c1 \uc720\ud615\uc744 \uc9c0\uc815\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc608\ub97c \ub4e4\uc5b4 Python \ud30c\uc77c \uacbd\ub85c, Flask \ud504\ub85c\uc81d\ud2b8\uc758 \ubaa8\ub4c8, \ub610\ub294 \ubaa8\ub4c8, \uc2a4\ud06c\ub9bd\ud2b8 \ubc0f Flask \uc778\uc2a4\ud134\uc2a4\uc758 \ub9de\ucda4 \uc870\ud569\uc744 \uc9c0\uc815\ud569\ub2c8\ub2e4. \uc774 \uc608\uc5d0\uc11c\ub294 <strong>autoapp.py<\/strong>\ub77c\ub294 \ud30c\uc77c\uc744 \uc2e4\ud589\ud558\ub824\uace0 \ud569\ub2c8\ub2e4.&nbsp;<\/p>\n<p>Application \ud544\ub4dc\uc5d0\uc11c \uc2e4\ud589\ud560 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc758 \uc774\ub984\uc744 \uc815\uc758\ud574\uc57c \ud569\ub2c8\ub2e4. \uc774 \uacbd\uc6b0\uc5d0\ub294 &#8216;<strong>app<\/strong>&#8216;\uc774 \ub420 \uac83\uc785\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-270947\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/08\/autoapp.png\" alt=\"\" width=\"1508\" height=\"999\"><\/figure>\n<p>\uc774\ub7ec\ud55c \uc124\uc815\uacfc \uae30\ud0c0 \uc2e4\ud589 \uad6c\uc131 \uc124\uc815\uc5d0 \ub300\ud574 \uc790\uc138\ud788 \uc54c\uc544\ubcf4\ub824\uba74 <a href=\"https:\/\/www.jetbrains.com\/help\/pycharm\/run-debug-configuration-flask-server.html#1\" target=\"_blank\" rel=\"noopener\">\uad00\ub828 \ub3c4\uc6c0\ub9d0 \ud398\uc774\uc9c0<\/a>\ub97c \ubc29\ubb38\ud558\uc138\uc694.<\/p>\n<h3><span id=\"How_you_can_change_the_default_port\" class=\"ez-toc-section\"><\/span>\ub514\ud3f4\ud2b8 \ud3ec\ud2b8\ub97c \ubcc0\uacbd\ud558\ub294 \ubc29\ubc95<\/h3>\n<p>\ub514\ud3f4\ud2b8 \ud3ec\ud2b8\ub97c \ubcc0\uacbd\ud574\uc57c \ud558\ub294 \uacbd\uc6b0, <em>Run \/ Debug Configurations(\uc2e4\ud589\/\ub514\ubc84\uadf8 \uad6c\uc131)<\/em> \ub300\ud654\uc0c1\uc790\uc5d0\uc11c\ub3c4 \ubcc0\uacbd\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. <em>Additional options(\ucd94\uac00 \uc635\uc158)<\/em> \ud544\ub4dc\uc5d0 <kbd>--port=[\ud3ec\ud2b8 \ubc88\ud638]<\/kbd>\ub97c \uc778\uc1c4\ud569\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-270958\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/08\/port.png\" alt=\"\" width=\"1508\" height=\"999\"><\/figure>\n<h2><span id=\"Working_with_templates\" class=\"ez-toc-section\"><\/span>\ud15c\ud50c\ub9bf \uc0ac\uc6a9\ud558\uae30<\/h2>\n<h3><span id=\"How_to_create_a_template_file_from_usage\" class=\"ez-toc-section\"><\/span>\uc0ac\uc6a9 \uc704\uce58\uc5d0\uc11c \ud15c\ud50c\ub9bf \ud30c\uc77c\uc744 \ub9cc\ub4dc\ub294 \ubc29\ubc95<\/h3>\n<p>Flask \uc9c0\uc6d0\uc758 \uc77c\ubd80\ub85c PyCharm\uc740 \ucf54\ub4dc \uc791\uc5c5 \uc911\uc5d0 \ud15c\ud50c\ub9bf \ud30c\uc77c\uc744 \uc790\ub3d9\uc73c\ub85c \uc0dd\uc131\ud558\ub294 \uae30\ub2a5\uc744 \uc81c\uacf5\ud569\ub2c8\ub2e4. \ub530\ub77c\uc11c \uacbd\ub85c\uc5d0 \uc5c6\ub294 \ud15c\ud50c\ub9bf\uc744 \uc5b8\uae09\ud558\uba74 PyCharm\uc774 \ud15c\ud50c\ub9bf \ud30c\uc77c\uc758 \uc774\ub984\uc744 \uac15\uc870 \ud45c\uc2dc\ud569\ub2c8\ub2e4. \uac15\uc870 \ud45c\uc2dc\ub41c \ud15c\ud50c\ub9bf \uc774\ub984\uc5d0 \uce90\ub7ff\uc744 \ub193\uace0 \ube60\ub978 \uc218\uc815 <em>Create template(\ud15c\ud50c\ub9bf \uc0dd\uc131)<\/em> &lt;name&gt;\uc744 \uc0ac\uc6a9\ud574 \u2325 \u23ce\ub97c \ub204\ub978 \ub2e4\uc74c, \uc0ac\uc6a9 \uac00\ub2a5\ud55c \uc778\ud150\uc158 \uc561\uc158 \ubaa9\ub85d\uc5d0\uc11c <em>Create template&lt;name&gt;<\/em>\uc744 \uc120\ud0dd\ud569\ub2c8\ub2e4.&nbsp;<\/p>\n<p>\ub610\ub294 \ub178\ub780\uc0c9 \uc804\uad6c\ub97c \ud074\ub9ad\ud558\uace0 \uc5ec\uae30\uc11c<em> <em>Create template&lt;name&gt;\uc744 \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/em><\/em><\/p>\n<p><\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-269956\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/08\/template_autocreation.png\" alt=\"\" width=\"1549\" height=\"992\"><\/figure>\n<p><em>Create Template<\/em> \ub300\ud654\uc0c1\uc790\uc5d0\uc11c \uc0c8 \ud15c\ud50c\ub9bf\uc744 \uc0dd\uc131\ud560 \ud15c\ud50c\ub9bf \ub514\ub809\ud130\ub9ac\ub97c \uc120\ud0dd\ud569\ub2c8\ub2e4. \uc774 \ube60\ub978 \uc218\uc815\uc73c\ub85c \ube48 \ud15c\ud50c\ub9bf\uc774 \uc0dd\uc131\ub429\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-269967\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/08\/template_dialog.png\" alt=\"\" width=\"1549\" height=\"992\"><\/figure>\n<p>\ubc18\ub300\ub85c \ud504\ub85c\uc81d\ud2b8 \ubdf0\uc5d0\uc11c <em>templates<\/em> \ud3f4\ub354\ub97c \ub9c8\uc6b0\uc2a4 \uc624\ub978\ucabd \ubc84\ud2bc\uc73c\ub85c \ud074\ub9ad\ud558\uace0 <em>New \/ HTML file(\uc0c8\ub85c \ub9cc\ub4e4\uae30 \/ HTML \ud30c\uc77c)<\/em>\uc744 \uc120\ud0dd\ud558\uc5ec \uc0c8 \ud15c\ud50c\ub9bf\uc744 \ub9cc\ub4e4\uba74 \uc77c\ubc18 HTML \ucf54\ub4dc\uac00 \ubbf8\ub9ac \ucc44\uc6cc\uc9c4 \ud30c\uc77c\uc774 \uc81c\uacf5\ub429\ub2c8\ub2e4.<\/p>\n<p><a href=\"https:\/\/www.jetbrains.com\/help\/pycharm\/templates.html\" target=\"_blank\" rel=\"noopener\">\ub3c4\uc6c0\ub9d0 \ud398\uc774\uc9c0<\/a>\uc5d0\uc11c PyCharm\uc774 \ud15c\ud50c\ub9bf\uc5d0 \uc5b4\ub5a4 \ub3c4\uc6c0\uc744 \uc8fc\ub294\uc9c0 \uc790\uc138\ud788 \uc54c\uc544\ubcfc \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<h3><span id=\"How_to_use_a_live_template\" class=\"ez-toc-section\"><\/span>\ub77c\uc774\ube0c \ud15c\ud50c\ub9bf\uc744 \uc0ac\uc6a9\ud558\ub294 \ubc29\ubc95<\/h3>\n<p>\uc791\uc5c5\uc744 \ucd5c\uc801\ud654\ud558\uae30 \uc704\ud574 \ub3d9\uc77c\ud55c \ucf54\ub4dc\ub97c \uc5ec\ub7ec \ubc88 \uc791\uc131\ud558\ub294 \ub300\uc2e0 \ub77c\uc774\ube0c \ud15c\ud50c\ub9bf\uc744 \ub9cc\ub4e4 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ucf54\ub4dc \uc2a4\ub2c8\ud3ab\uc744 \ud655\uc7a5\ud558\ub824\uba74 \ud574\ub2f9 \ud15c\ud50c\ub9bf \uc57d\uc5b4\ub97c \uc785\ub825\ud558\uace0 \u21e5\ub97c \ub204\ub985\ub2c8\ub2e4. \ud15c\ud50c\ub9bf\uc758 \ud55c <a href=\"https:\/\/www.jetbrains.com\/help\/pycharm\/template-variables.html\" target=\"_blank\" rel=\"noopener\">\ubcc0\uc218<\/a>\uc5d0\uc11c \ub2e4\uc74c \ubcc0\uc218\ub85c \uc774\ub3d9\ud558\ub824\uba74 \u21e5\ub97c \uae38\uac8c \ub204\ub985\ub2c8\ub2e4. \u21e7 \u21e5\ub97c \ub204\ub974\uba74 \uc774\uc804 \ubcc0\uc218\ub85c \uc774\ub3d9\ud569\ub2c8\ub2e4.<\/p>\n<p>\uc774 \uacbd\uc6b0\uc5d0\ub294 <kbd>html: 5<\/kbd>\ub97c \uc785\ub825\ud558\uace0&nbsp; \u21e5\ub97c \ub20c\ub7ec \uc0ac\uc804 \uad6c\uc131\ub41c \ub77c\uc774\ube0c \ud15c\ud50c\ub9bf\uc744 \uc0ac\uc6a9\ud569\ub2c8\ub2e4. \ucd94\uac00\ub85c \uc218\uc815\ud560 \uc218 \uc788\ub294 \uae30\ubcf8 HTML \ucf54\ub4dc\uac00 \uc81c\uacf5\ub429\ub2c8\ub2e4.&nbsp;<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-270379\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/08\/html_5_template.gif\" alt=\"\" width=\"1620\" height=\"1037\"><\/figure>\n<p>PyCharm\uc5d0\uc11c\ub294 \uc0ac\uc804 \uc815\uc758\ub41c \ub77c\uc774\ube0c \ud15c\ud50c\ub9bf\uc744 \ud48d\ubd80\ud558\uac8c \uc774\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc0ac\uc6a9\ud558\ub824\ub294 \ud56d\ubaa9\uc744 \uc0b4\ud3b4\ubcf4\uace0 \uc0ac\uc6a9\uc790 \uc9c0\uc815\ud558\ub824\uba74 <em>Settings(\uc124\uc815) \/ Preferences(\ud658\uacbd \uc124\uc815) | Editor(\uc5d0\ub514\ud130) | Live Templates(\ub77c\uc774\ube0c \ud15c\ud50c\ub9bf) <\/em>\uc73c\ub85c \uc774\ub3d9\ud569\ub2c8\ub2e4. \uc5ec\uae30\uc11c \uc0ac\uc6a9\ud55c \ub77c\uc774\ube0c \ud15c\ud50c\ub9bf\uc740 <em>Zen HTML<\/em>\uc5d0 \uc788\uc2b5\ub2c8\ub2e4. \uc774\ub97c \ud074\ub9ad\ud558\uba74 \uc57d\uc5b4 \ubc0f \ud15c\ud50c\ub9bf \ud14d\uc2a4\ud2b8\ub97c \ud3ec\ud568\ud558\uc5ec \ud15c\ud50c\ub9bf\uc5d0 \ub300\ud55c \uc790\uc138\ud55c \uc815\ubcf4\ub97c \ubcfc \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ud544\uc694\uc5d0 \ub530\ub77c \ud15c\ud50c\ub9bf\uc744 \uc218\uc815\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-270863\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/08\/live_template_settings.png\" alt=\"\" width=\"1549\" height=\"992\"><\/figure>\n<p>\ud15c\ud50c\ub9bf \ud30c\uc77c\ub85c \ub3cc\uc544\uac00\uc11c <kbd>&lt;body&gt;<\/kbd>\uc5d0 <kbd>Hello {{ \uc774\ub984 }}<\/kbd>\uc744 \ucd94\uac00\ud558\uace0 \uc571\uc744 \uc2e4\ud589\ud558\uc5ec \ud15c\ud50c\ub9bf\uc774 \uc791\ub3d9\ud558\ub294\uc9c0 \ud655\uc778\ud569\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-270401\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/08\/add_text_to_template.png\" alt=\"\" width=\"1549\" height=\"992\"><\/figure>\n<p>localhost\uc758 URL\uc774 \uc81c\uacf5\ub418\uace0, \uc774\ub97c \ube0c\ub77c\uc6b0\uc800\uc5d0 \ubd99\uc5ec\ub123\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4. URL\uc5d0 <kbd>\/index<\/kbd>\ub97c \ucd94\uac00\ud558\uba74 &#8216;<kbd>Hello PyCharm<\/kbd>&#8216; \ud14d\uc2a4\ud2b8\uac00 \ud45c\uc2dc\ub429\ub2c8\ub2e4. \uc544\ubb34 \ubb38\uc81c \uc5c6\uc774 \uc798 \uc791\ub3d9\ud569\ub2c8\ub2e4!<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-270412\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/08\/run_app.gif\" alt=\"\" width=\"1620\" height=\"1037\"><\/figure>\n<h2><span id=\"How_to_add_a_templates_folder_to_your_project\" class=\"ez-toc-section\"><\/span>\ud504\ub85c\uc81d\ud2b8\uc5d0 \ud15c\ud50c\ub9bf \ud3f4\ub354\ub97c \ucd94\uac00\ud558\ub294 \ubc29\ubc95<\/h2>\n<p><em>\ub2e4\ub978 \uc774\ub984(&#8216;templates&#8217;\uc774 \uc544\ub2cc)\uc73c\ub85c <em>templates<\/em> \ud3f4\ub354\ub97c \uc0ac\uc6a9\ud558\ub824\uba74 \ud504\ub85c\uc81d\ud2b8 \ubdf0\uc5d0\uc11c \uae30\uc874 \ud15c\ud50c\ub9bf \ud3f4\ub354\ub97c \uc0ad\uc81c\ud55c \ub2e4\uc74c \ud504\ub85c\uc81d\ud2b8 \uc774\ub984\uc744 \ub9c8\uc6b0\uc2a4 \uc624\ub978\ucabd \ubc84\ud2bc\uc73c\ub85c \ud074\ub9ad\ud558\uace0 &lt; 0&gt;New \/ Directory(\uc0c8\ub85c \ub9cc\ub4e4\uae30\/\ub514\ub809\ud130\ub9ac)<\/em>\ub97c \uc120\ud0dd\ud55c \ub2e4\uc74c, \ub300\ud654\uc0c1\uc790 \ucc3d\uc5d0\uc11c \ud3f4\ub354 \uc774\ub984\uc744 \uc815\uc758\ud569\ub2c8\ub2e4.&nbsp;<\/p>\n<p>\ud3f4\ub354\ub97c \ub9c8\uc6b0\uc2a4 \uc624\ub978\ucabd \ubc84\ud2bc\uc73c\ub85c \ud074\ub9ad\ud558\uace0 <em>Mark Directory as \/ Template Folder(\ub514\ub809\ud130\ub9ac\ub97c \ub2e4\ub978 \uc774\ub984\uc73c\ub85c \ud45c\uc2dc\/\ud15c\ud50c\ub9bf \ud3f4\ub354)<\/em>\ub97c \uc120\ud0dd\ud558\uc5ec \ud3f4\ub354\ub97c \ud15c\ud50c\ub9bf \ud3f4\ub354\ub85c \ud45c\uc2dc\ud558\ub294 \uac83\uc744 \uc78a\uc9c0 \ub9c8\uc138\uc694. \uc774\uc81c \uc6d0\ud558\ub294 \uc774\ub984\uc758 \ud15c\ud50c\ub9bf \ud3f4\ub354\uac00 \uc0dd\uacbc\uc2b5\ub2c8\ub2e4!<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-270424\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/08\/new_templates_folder.gif\" alt=\"\" width=\"1620\" height=\"1065\"><\/figure>\n<h2><span id=\"How_to_associate_an_SQL_database_with_your_Flask_project_and_why_you_might_do_so\" class=\"ez-toc-section\"><\/span>SQL \ub370\uc774\ud130\ubca0\uc774\uc2a4\ub97c Flask \ud504\ub85c\uc81d\ud2b8\uc640 \uc5f0\uacb0\ud558\ub294 \ubc29\ubc95(\uadf8\ub9ac\uace0 \uadf8\ub807\uac8c \ud558\ub294 \uc774\uc720)<\/h2>\n<p>\ud504\ub85c\uc81d\ud2b8\uc5d0 SQL \ub370\uc774\ud130\ubca0\uc774\uc2a4\uac00 \uc788\ub294 \uacbd\uc6b0, \ud504\ub85c\uc81d\ud2b8 \uad6c\uc870\uc5d0\uc11c \uc624\ub978\ucabd \ud328\ub110\uc758 <em>Database(\ub370\uc774\ud130\ubca0\uc774\uc2a4)<\/em> \ub3c4\uad6c \ucc3d\uc73c\ub85c \ub04c\uc5b4\ub2e4 \ub193\uae30\ub9cc \ud558\uba74 PyCharm\uc758 \ud504\ub85c\uc81d\ud2b8\uc640 \ub370\uc774\ud130\ubca0\uc774\uc2a4\ub97c \uc5f0\uacb0\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.&nbsp;<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-270440\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/08\/db_import.gif\" alt=\"\" width=\"1620\" height=\"1065\"><\/figure>\n<p>\ub370\uc774\ud130\ubca0\uc774\uc2a4\ub97c \ud504\ub85c\uc81d\ud2b8\uc640 \uc5f0\uacb0\ud558\uba74 SQL \uad6c\ubb38\uacfc \uc804\uccb4 \ud504\ub85c\uc81d\ud2b8\uc5d0 \ub300\ud55c \uc801\uc808\ud55c \ucf54\ub4dc \uc815\ubcf4\ub97c \uc5bb\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4. PyCharm\uc740 \uc5f0\uacb0\ub41c \ub370\uc774\ud130\ubca0\uc774\uc2a4\ub97c \ud3ec\ud568\ud558\uc5ec \uc804\uccb4 \ud504\ub85c\uc81d\ud2b8\ub97c \ub0b4\ubd80 \uac80\uc0ac\ud560 \uc218 \uc788\uc73c\uba70 \ucf54\ub4dc\uc5d0\uc11c \ub370\uc774\ud130\ubca0\uc774\uc2a4\uc758 \ud14c\uc774\ube14 \uc774\ub984\uc774 \ud544\uc694\ud560 \ub54c \uc774\ub97c \uc778\uc2dd\ud569\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-270913\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2022\/08\/sql_code_insight-1.gif\" alt=\"\" width=\"1620\" height=\"904\"><\/figure>\n<p>\uc774\uc81c \uc0c8\ub85c\uc6b4 Flask \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc5d0\uc11c \uc0dd\uc0b0\uc801\uc73c\ub85c \uc791\uc5c5\ud560 \ubaa8\ub4e0 \uc900\ube44\ub97c \ub9c8\ucce4\uc2b5\ub2c8\ub2e4. \ucd94\uac00\uc801\uc778 \uc9c8\ubb38\uc774 \uc788\uc73c\uba74 \ub313\uae00\uc744 \ub0a8\uae30\uac70\ub098 <a title=\"https:\/\/twitter.com\/pycharm\" href=\"https:\/\/twitter.com\/pycharm\" target=\"_blank\" rel=\"noopener\">Twitter<\/a>\uc5d0 \uae00\uc744 \ub0a8\uaca8\uc8fc\uc138\uc694.<\/p>\n<p>\uc774 Flask \ud29c\ud1a0\ub9ac\uc5bc\uc744 \ub118\uc5b4 \ub354 \ub9ce\uc740 \uac83\uc744 \ubc30\uc6b0\uace0 \uc2f6\ub2e4\uba74 \ub2e4\uc74c\uacfc \uac19\uc740 \uc720\uc6a9\ud55c \ub9ac\uc18c\uc2a4\ub97c \ucc3e\uc544\ubcfc \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p>\uc77d\uc5b4\ubcf4\uae30:<\/p>\n<ul>\n<li><a href=\"https:\/\/www.jetbrains.com\/help\/pycharm\/tutorial-creating-and-applying-live-templates-code-snippets.html\" target=\"_blank\" rel=\"noopener\">PyCharm\uc5d0\uc11c \ub77c\uc774\ube0c \ud15c\ud50c\ub9bf \ub9cc\ub4e4\uae30 \ud29c\ud1a0\ub9ac\uc5bc<\/a><\/li>\n<li><a href=\"https:\/\/www.jetbrains.com\/help\/pycharm\/creating-web-application-with-flask.html\" target=\"_blank\" rel=\"noopener\">Flask\ub85c \uc6f9 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \ub9cc\ub4e4\uae30 \ud29c\ud1a0\ub9ac\uc5bc<\/a><\/li>\n<li><a href=\"https:\/\/www.jetbrains.com\/help\/pycharm\/relational-databases.html\" target=\"_blank\" rel=\"noopener\">\ub370\uc774\ud130\ubca0\uc774\uc2a4 \uad00\ub9ac\uc5d0 \ub300\ud55c PyCharm \ub3c4\uc6c0\ub9d0 \ud398\uc774\uc9c0<\/a><\/li>\n<\/ul>\n<p>\uc2dc\uccad\ud558\uae30:<\/p>\n<ul>\n<li><a href=\"https:\/\/youtu.be\/uZfpKY5qtCI\" target=\"_blank\" rel=\"noopener\">Python, Flask \ubc0f Elasticsearch\ub85c \uac80\uc0c9 \uae30\ub2a5 \ube4c\ub4dc\ud558\uae30<\/a><\/li>\n<li><a href=\"https:\/\/youtu.be\/1hd05Ti79AM\" target=\"_blank\" rel=\"noopener\">Google Cloud\uc5d0\uc11c Flask \uc571 \uac1c\ubc1c\ud558\uae30 <\/a><\/li>\n<\/ul>\n<p><em>\uac8c\uc2dc\ubb3c \uc6d0\ubb38 \uc791\uc131\uc790<\/em><\/p>\n\n    <div class=\"about-author \">\n        <div class=\"about-author__box\">\n            <div class=\"row\">\n                <div class=\"about-author__box-img\">\n                    <img decoding=\"async\" src=\"https:\/\/secure.gravatar.com\/avatar\/?s=200&#038;r=g\" width=\"200\" height=\"200\" alt=\"\" loading=\"lazy\"  class=\"avatar avatar-200 wp-user-avatar wp-user-avatar-200 photo avatar-default\">\n                <\/div>\n                <div class=\"about-author__box-text\">\n                                                        <\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n","protected":false},"author":964,"featured_media":270764,"comment_status":"closed","ping_status":"closed","template":"","categories":[6711,1401,5108,2347],"tags":[324,294,91,1796,792],"cross-post-tag":[],"acf":[],"_links":{"self":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/pycharm\/280310"}],"collection":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/pycharm"}],"about":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/types\/pycharm"}],"author":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/users\/964"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/comments?post=280310"}],"version-history":[{"count":10,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/pycharm\/280310\/revisions"}],"predecessor-version":[{"id":280371,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/pycharm\/280310\/revisions\/280371"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/media\/270764"}],"wp:attachment":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/media?parent=280310"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/categories?post=280310"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/tags?post=280310"},{"taxonomy":"cross-post-tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/cross-post-tag?post=280310"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}