「実践Django Pythonによる本格Webアプリケーション開発」という書籍で勉強中です。「$ python manage. py runserver」を実行する時に、以下のようなエラーが発生しました。
django.db.utils.NotSupportedError: deterministic=True requires SQLite 3.8.3 or higher
この解決方法についてネットで調べるといくつか記事が出てきますが、私の環境では問題を解決できませんでした。
結局、PythonとDjangoのバージョンを書籍のバージョンと合わせる(ダウングレード)ことでエラーが出なくなりました。
Python | 3.9.0 |
Django | 3.2 |
ちなみに、Python 3.9.2、Django 3.2でもエラーが発生しました。
Python 3.9.0をインストール
Python 3.9.0のファイルをダウンロード。
https://www.python.org/downloads/source/
ユーザーのホームディレクトリにアップロード。
Python 3.9.0をインストール。
$ tar xJf Python-3.9.0.tar.xz $ cd Python-3.9.0 $ ./configure $ make $ sudo make install
現在インストールされているDjangoをアンインストール
$pip freeze Django==4.1 $pip uninstall Django==4.1
Django 3.2をインストール
バージョンを指定してDjangoをインストール
pip install django==3.2
おわりに
ダウングレードで解決しましたが、今後のことを考えると根本的な問題が解決できていないので、解決方法がわかり次第追記します。