From the Beginning

Notes on my Learning Code

.gitignoreとimportにハマる

Django Girls のチュートリアル

はじめた。

壮大にハマった。。。

gitignoreにハマる

Djangoプロジェクトを作ってGitHubにpush。

警告メール到着。

GitGuardian has detected the following Django Secret Key exposed within your GitHub account. Details

  • Secret type: Django Secret Key

これはあかんやつ!!焦る。

settings.pyの中にSECRET_KEYというものがあり、50桁のランダムな秘密鍵の文字列がある。

解決法としては、.gitignoreファイルで指定しなければいけない。

更に問題発生、後から指定しても消えない。 怖いので一旦削除。

GitについてUdemyで勉強し直し。 git addでなんでもやっていたことが問題。

git rm ...
git rm -r ...
git rm --cached ...

もう1度やり直し。 ここからが長かった、

imoprtがどうしてもpylintでエラー

ググった結果、setting_local.pyなどとして、そちらにSECRET_KEY変数を指定し、gitignoreに指定 setting.pyではimportしSECRET_KEY = settings_local.SECRET_KEYとするのがよいよう。

import setting_local from *という記事が多いが、from *は非推奨のよう。 import setting_localとする。

ここで、VSCode上でエラー発生。pylintからUnable to importのエラーメッセージ。 これがなかなか解決せず。 公式でも色々と書いてあり、全部試すがうまくいかず。 VSCodeの環境設定 setting.jsonを散々触った。パスが通ってないとか、この記事がすごく多い。 ターミナルからあれこれするとか。

最後の最後にやっと判明。 init.pyがあり、そのフォルダ自体がパッケージ化されているとみなされる場合は from . imoprt setting_localとするしかない。.はカレントディレクト

ja.stackoverflow.com

Django

$ python3 -m venv myvenv  # myvenvは任意の名前
$ source myvenv/bin/activate
# ここからは全て仮想環境(myvenv)の中で行う
$ python -m pip install --upgrade pip
# requirements.txtファイルを作成しDjango~=2.2.4記載
$ django-admin startproject mysite .
# setting.pyにて、TIME_ZONEなど設定をする。
$ python manage.py migrate #ここで前述のエラーが絡み、進めなくなった。
$ python manage.py runserver
# http://127.0.0.1:8000/にアクセス
$ python manage.py startapp blog
# setting.pyのINSTALLED_APPSに'blog.apps.BlogConfig'を追加する