再現時の注意点
MySQLを使わずにSQLiteで再現しています。その為データベースはSQLiteで再現しています。
理由としてmysqlclientの実行部分が無かったからです。
結果は成功します
省略したコマンド部分
$ sudo systemctl enable mysql
$ sudo systemctl start mysql
$ mysql -u rootcreate database mydb;
「アプリケーションでこのデータベースを使うように設定」⇒ mysite/mysite/settings.pyのDATABASES = {}部分
理解のために拡張
modeles.py で 項目を追加
その後でモデルからマイグレーションファイルを作成
python3 manage.py makemigrations todo
次に、作成したマイグレーションファイルを実行
python3 manage.py migrate
併せて修正するファイル
index.htmlファイルで太文字が修正箇所
forms.pyファイルで太文字が修正箇所
実行結果
追加考察
urls.pyとviews.pyの関連部分
reverseを使う利点
メンテナンスが容易:
URLパターンの名前を使うため、URLが変更された場合でも、コードの他の部分を変更する必要がありません。
これにより、URL構造の変更に対してコードが強固になります。
可読性の向上:
コードを読んだときに、URLの意味が明確に伝わります。特に、URLに多くのパラメータが含まれている場合に役立ちます。
DRY原則:
同じURLを複数の場所で使用する場合に、ハードコードされたURLを使わないことでDRY(Don't Repeat Yourself)原則を守ることができます。(by ChatGTP)
ありがとうございます。出典元:
piaza times Django3入門: 初心者でも10分でWebサービスを作れる!PythonフレームワークDjangoとPaizaCloudの使い方