Creating a Flask Project
Flask project in intended for productive development of the Flask applications. PyCharm takes care of creating the specific directory structure, and settings.
To create a Flask project, follow these steps
From the main menu, choose New Project button in the Welcome screen. New Project dialog opens., or click the
In the New Project dialog, do the following:
Specify project type Flask.
Specify project location.
Next, click to expand the Python Interpreter node, and select the new environment or previously configured interpreter, by clicking the corresponding radio-button.
The following steps depend on your choice:
Next, specify the Location and Base interpreter of the new virtual environment. If necessary, click the Inherit global site-packages and Make available to all projects check boxes.
When configuring the base interpreter, you need to specify the path to the Python executable. If PyCharm detects no Python on your machine, it provides two options: to download the latest Python versions from python.org or to specify a path to the Python executable (in case of non-standard installation).
Previously configured interpreter: if this option has been selected, choose the desired interpreter from the list, or (if the desired interpreter is not found), click and choose the interpreter. See Configure a Python interpreter for details.
Click (More Settings), and specify the following:
From the Template language list, select the language to be used.
- In the Templates folder field, specify the directory where the templates will be stored, and where they will be loaded from. You can specify the name of the directory that doesn't yet exist; in this case, the directory will be created.
PyCharm creates an application and produces specific directory structure, which you can explore in the Project tool window. Besides that, PyCharm creates a stub Python script with the name app.py, which provides a simple "Hello, World!" example.
You can run the created application by pressing Shift+F10 Preview the run results.
Note that the application was run with the following Flask specific variables:
FLASK_APP=app.py– Defines an entry point of the Flask application - the target instance of the
Flaskclass. When extending your Flask application and adding more modules and files, you might need to pass some non-default
FLASK_APPvalues. You can pass a module name, a path to the target Python file, or any combination of modules, scripts, and
Flaskclass instances, for example,
access_management– the module name
access– the target file in the module
Flaskclass instance in
For more information about the
FLASK_APPvariable, refer to Flask CLI documentation.
FLASK_ENV=development– Sets one of possible environments.
FLASK_DEBUG=0– Controls the built-in Flask debug mode. With this mode enabled
FLASK_DEBUG=1, the development server will be automatically reloaded on any code change enabling continuous debugging. For more information about Flask debugger, refer to Flask Debug Mode.
You can change Flask specific variables by editing the corresponding parameters of the Flask Server Run/Debug configuration.
When you've enabled Flask support in your project, the Python console starts acting as a Flask console. Use code completion to enter and execute Flask-specific commands.