日常Python

python初学者の学習記録

day 2 学習記録

学習の記録

Google Cloud Platformへのデプロイに挑戦した結果、失敗した。 正確に言うとサイト表示は出来たが、DBで詰まった。

どうやら公式ドキュメントはサンプルプログラムを使う事前提で書かれているようだ。1日かけて失敗したので、しばらく寝かせて次に行く。記事ははてなブログで書き残していこう。


ここまで写経で学習してきた。もちろん効果はあったが、ここからは完成コードに注釈をいれたり、抜き出してまとめていった方が身になると感じる。ピックアップしたものを備忘録として記事を残していく事にする。

django 未整理

便利そうなコード

ランダムな文字列を生成する

from django.utils.crypto import get_random_string

# ex:
get_random_string(15)

def create_pass():
    return get_random_string(10)
#modelに使う際、毎回変える為に()を付けない
pass= models.CharField(default=create_pass, primary_key=True)

django model.py

継承

AbstractBaseUser

ログイン認証でusername以外を使う場合、AbstractBaseUserを継承してカスタムユーザーを作成する。

気になるコード

# 一覧表示などでnameを返す
def __str__(self):
    return self.name

参考リンク

qiita.com

django よく使うターミナルコマンド

# 仮想環境
python -m venv venv

venv\Scripts\activate

# pip update
pip install --upgrade pip
python -m pip install --upgrade pip

# パッケージ一覧インストール
python -m pip install -r requirements.txt

# パッケージ一覧出力
python -m pip freeze > requirements.txt


# djangoセットアップ
django-admin startproject プロジェクト名 .

python manage.py startapp アプリケーション名


# マイグレーション
python manage.py makemigrations
python manage.py migrate

# 管理者登録
python manage.py createsuperuser



# ローカルサーバー起動
python manage.py runserver