Creating 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
- On the main menu, choose New Project button in the Welcome screen. New Project dialog box opens. , or click the
- In the New Project dialog box, do the following:
- Specify project type Flask.
- Specify project location.
- Next, click to expand the Project Interpreter node, and select the new environment or existing interpreter, by clicking the corresponding radio-button. The following steps depend on your choice:
- New environment: if this option has been selected, choose the tool to be used to create a virtual environment. To do that, click the drop-down list and choose Virtualenv or Conda.
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.
- Existing interpreter: if this option has been selected, choose the desired interpreter from the drop-down list, or (if the desired interpreter is not found), click and choose the interpreter. See Configuring Python Interpreter for details.
- New environment: if this option has been selected, choose the tool to be used to create a virtual environment. To do that, click the drop-down list and choose Virtualenv or Conda.
- Click (More Settings), and specify the following:
- From the drop-down list, select the template 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.
- Click Create.
- You can run the created application by right-clicking
app.py
and choosing Run 'Flask Project(app.py)'. 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 theFlask
class. When extending your Flask application and adding more modules and files, you might need to pass some non-defaultFLASK_APP
values. You can pass a module name, a path to the target Python file, or any combination of modules, scripts, andFlask
class instances, for example,FLASK_APP=access_management.access:app2
, where:access_management
– the module nameaccess
– the target file in the moduleapp2
– theFlask
class instance inaccess
.
FLASK_APP
variable, 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.
Last modified: 23 July 2018