やりたいこと
djangoのチュートリアルをやりたい゛!!!!
デフォルトではsqliteを使う設定になっているが、後でデプロイするかも...という話があったので、postgresqlを使う設定に変えたい!
という感じの記事です。
やったことを備忘録的に記していきます。
環境
macです
postgresqlのダウンロード
brew install postgresql
psqlの各種設定
django経由で動かす前にテーブルを作ったり権限を変更したりする必要があるっぽい
ということで、
サーバーの立ち上げ
brew services start postgresql
これでpsqlコマンドを打てるようになります
ユーザ作成
$createuser -P hogehoge
//パスワード設定
Enter password for new role: ここで1回目入力後Enter
Enter it again: ここで2回目入力後Enter
権限変更 (新しくユーザーを作る場合)
superuserの権限を持っているユーザでログインして、
psql -U <superuser> postgres
以下のように権限を持たせたいアカウントに SUPERUSER
とCREATEDB
の権限を持たせてあげる
ALTER ROLE <newuser> with SUPERUSER;
ALTER ROLE <newuser> with CREATEDB;
データベース作成
先にデータベースを作っておこう (ownerは新しく作ったユーザーの想定)
CREATE DATABASE hogetable -O <newuser>;
psqlの方はこれでOK!
djangoの設定をいじる
setting.py
を以下のようにいじってあげる
注意点としては、この際'NAME'
は、BASE_DIR
を取ってあげる(psqlがデータベースの名前から勝手に場所を探してくれる為)
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': '<db_name>',
'USER': '<db_username>',
'PASSWORD': '<password>',
'HOST': '<db_hostname_or_ip>',#これはなくてもなんとかなる
'PORT': '<db_port>', #これはなくてもなんとかなる
}
}
そして希望のmigrateきちゃーーーー!!!
python manage.py migrate
多分これでmigrateまでいけます やったね