今更一から勉強しよう

勉強のノート。

Python、Djangoの勉強(2)

公式チュートリアルを通じて基本を学ぶ。

docs.djangoproject.com

docs.djangoproject.com

2020/02/12

  • 概要を読む
  • 次から頑張る

2020/03/21

仕事でPyhton、DjangoPostgreSQL環境を使うことになったので仕切り直し。
PythonDjangoはそのまま使ってPycharm、PostgreSQLをインストール。

Pycharm今回はCommunity版をインストール

www.jetbrains.com

PostgreSQL初めて使う。何か一冊読んだ方がいいかもしれない。
導入の仕方

www.dbonline.jp

とりあえずロケールはJapaneseで f:id:ebi40:20200321120106p:plain

DjangoPostgreSQLを適用する方法、とりあえずURLを引いておく
手順が結構あるので今日はDjangoの練習とDBの作成までにする https://qiita.com/shigechioyo/items/9b5a03ceead6e5ec87ec

qiita.com

virsual envをenv2で作成する

cd c:\work\note
virtualenv env2

Djangoインストール

pip install django

pycharmがcommunity版だからか、Pythonコードからvirtual envが動かせない・・・
デバッグできない・・・

とりあえずコマンドプロンプトで動作させていく。
PycharmProjectsにDjangoプロジェクトtest2を作成。

django-admin startproject test1

動作確認OK

python manage.py runserver
http://127.0.0.1:8000にアクセス

migrate OK

python manage.py migrate

pycharmでdebugする方法が書いてあった。
debugできそうだ。 https://qiita.com/misayaki216/items/7229e325516172e3029b

f:id:ebi40:20200321154859p:plain

DjangoApacheで動作させる方法が書いてあった。
今日はいいけど、また見ておく必要がある。

qiita.com

PostgreSQLを進める。まずはPATHの設定。

f:id:ebi40:20200321160425p:plain

psqlコマンドが使えるか確認 OK

psql --version

公式ドキュメント

PostgreSQL 11.5文書

インストール直後はsuper userのpostgresのみ存在しているらしい。

psql -U postgres -d postgres

切断

postgres=# \q

postgresql.conf設定ファイル。とりあえずそのままとする。

...\PostgreSQL\12\data\postgresql.conf

pg_hba.confは接続許可に関する設定。いずれ理解する。

...\PostgreSQL\12\data\pg_hba.conf

ログ

...\PostgreSQL\12\data\log\postgresql...sql

以下のサイトでpostgreSQLの基本を知ることから導入まで網羅できる。 qiita.com

基本的な構造

データベースサーバ
 └ 1:N データベース
  └1:N スキーマ(デフォルト:Public)
   └1:N テーブル、インデックス等

pgAdminでユーザを作成する。とりあえず適当に。

f:id:ebi40:20200321165301p:plain
f:id:ebi40:20200321174552p:plain]

f:id:ebi40:20200321174657p:plain

f:id:ebi40:20200321174809p:plain

ユーザを作ったばかりだとデータベースがないので接続できない。 f:id:ebi40:20200321165906p:plain

pgAdminでtablespaceを作成する。

f:id:ebi40:20200321174912p:plain

f:id:ebi40:20200321175005p:plain

pgAdminでデータベースを作成する。
Collation(照合順序)とCharacter Typeはこれでいいのか?
エンコーディングロケールとは合わせないといけないらしいが、選択するところがない。
参考: ロケール(国際化と地域化) | Let's Postgres
granteeは権限を与えられる側。granterは権限を与える側。(postgres固定) f:id:ebi40:20200321170117p:plain
f:id:ebi40:20200321175400p:plain
f:id:ebi40:20200321181103p:plain
f:id:ebi40:20200321181510p:plain

データベース作成後、接続ができるように。 f:id:ebi40:20200321181732p:plain

Create Table発行 f:id:ebi40:20200321182649p:plain

publicスキーマの下に作成された。 f:id:ebi40:20200321182814p:plain

下準備はここまで、明日はDjangoPostgreSQLを接続する。