FlaskアプリにSQLAlchemyを追加する「Flask-SQLAlchemy」のインストールについて解説しています。
「Flask-SQLAlchemy(https://github.com/pallets-eco/flask-sqlalchemy)」は、FlaskアプリにSQLAlchemyを追加し、FlaskでSQLAlchemyを使用することを簡素化することができます。
■Python
今回のPythonのバージョンは、「3.7.9」を使用しています。(Windows10)(pythonランチャーでの確認)
■Flask-SQLAlchemyをインストールする
Flask-SQLAlchemyをインストールを行いますが、今回はpipを経由してインストールを行うので、まずWindowsのコマンドプロンプトを起動します。
pip install Flask-SQLAlchemy
起動後、上記のコマンドを入力し、Enterキーを押します。
なお、今回は、pythonランチャーを使用しており、Python Version 3.7.9にインストールを行うために、バージョンの切り替えを行います。
py -3.7 -m pip install Flask-SQLAlchemy
切り替えるために、上記のコマンドを入力し、Enterキーを押します。
Defaulting to user installation because normal site-packages is not writeable Collecting Flask-SQLAlchemy Downloading Flask_SQLAlchemy-2.5.1-py2.py3-none-any.whl (17 kB) Collecting Flask>=0.10 Using cached Flask-2.2.2-py3-none-any.whl (101 kB) Requirement already satisfied: SQLAlchemy>=0.8.0 in c:\users\user_\appdata\roaming\python\python37\site-packages (from Flask-SQLAlchemy) (1.4.27) Collecting itsdangerous>=2.0 Using cached itsdangerous-2.1.2-py3-none-any.whl (15 kB) Collecting click>=8.0 Using cached click-8.1.3-py3-none-any.whl (96 kB) Requirement already satisfied: Jinja2>=3.0 in c:\users\user_\appdata\roaming\python\python37\site-packages (from Flask>=0.10->Flask-SQLAlchemy) (3.0.3) Requirement already satisfied: importlib-metadata>=3.6.0 in c:\users\user_\appdata\roaming\python\python37\site-packages (from Flask>=0.10->Flask-SQLAlchemy) (4.8.1) Collecting Werkzeug>=2.2.2 Using cached Werkzeug-2.2.2-py3-none-any.whl (232 kB) Requirement already satisfied: greenlet!=0.4.17 in c:\users\user_\appdata\roaming\python\python37\site-packages (from SQLAlchemy>=0.8.0->Flask-SQLAlchemy) (1.1.2) Requirement already satisfied: colorama in c:\users\user_\appdata\roaming\python\python37\site-packages (from click>=8.0->Flask>=0.10->Flask-SQLAlchemy) (0.4.4) Requirement already satisfied: typing-extensions>=3.6.4 in c:\users\user_\appdata\roaming\python\python37\site-packages (from importlib-metadata>=3.6.0->Flask>=0.10->Flask-SQLAlchemy) (3.10.0.2) Requirement already satisfied: zipp>=0.5 in c:\users\user_\appdata\roaming\python\python37\site-packages (from importlib-metadata>=3.6.0->Flask>=0.10->Flask-SQLAlchemy) (3.6.0) Requirement already satisfied: MarkupSafe>=2.0 in c:\users\user_\appdata\roaming\python\python37\site-packages (from Jinja2>=3.0->Flask>=0.10->Flask-SQLAlchemy) (2.1.0) Collecting MarkupSafe>=2.0 Using cached MarkupSafe-2.1.1-cp37-cp37m-win32.whl (14 kB) Installing collected packages: MarkupSafe, Werkzeug, itsdangerous, click, Flask, Flask-SQLAlchemy Attempting uninstall: MarkupSafe Found existing installation: MarkupSafe 2.1.0 Uninstalling MarkupSafe-2.1.0: Successfully uninstalled MarkupSafe-2.1.0 Attempting uninstall: click Found existing installation: click 7.1.2 Uninstalling click-7.1.2: Successfully uninstalled click-7.1.2 WARNING: The script flask.exe is installed in 'C:\Users\user_\AppData\Roaming\Python\Python37\Scripts' which is not on PATH. Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location. ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts. celery 5.1.2 requires click<8.0,>=7.0, but you have click 8.1.3 which is incompatible. Successfully installed Flask-2.2.2 Flask-SQLAlchemy-2.5.1 MarkupSafe-2.1.1 Werkzeug-2.2.2 click-8.1.3 itsdangerous-2.1.2 WARNING: You are using pip version 21.3.1; however, version 22.2.2 is available. You should consider upgrading via the 'C:\Program Files (x86)\Python37-32\python.exe -m pip install --upgrade pip' command.
Enterキーを押すと、インストールが開始され、「Successfully installed」と表示されます。これが表示されれば、Flask-SQLAlchemyのバージョン2.5.1が正常にインストールされたことになりますが、今回のインストールでは「ERROR: pip’s dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.(ERROR: pip の依存性解決は現在インストールされているすべてのパッケージを考慮に入れていません。この挙動は以下のような依存関係の衝突の原因となっています。)」というエラーが発生し、このエラーは依存関係の衝突が原因によるもので、インストールする際は、仮想環境を構築しインストールすることを推奨する。
コメント