.gitignoreとimportにハマる
Django Girls のチュートリアル
はじめた。
壮大にハマった。。。
gitignoreにハマる
警告メール到着。
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
とするしかない。.はカレントディレクトリ
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'を追加する