Django4 PostgreSQL14 dumpdataコマンド設定 まとめ>Django>情報科学

この記事 > Django > 情報科学
作成 更新

None


意味:

dumpdata(データダンプ)コマンドとは、Djangoで、データベースの中身を出力するコマンドです。出力された中身のデータのことを、Djangoではfixture(フィクスチャア)ファイルと呼びます。fixtureファイルは、デフォルトではjson形式です。

動作環境:


Djangoの初期設定を終えた段階を想定しています。
OS: Linux Ubuntu 22
Program: Python 3.7
Framework: Django 4
Database: PostgreSQL 14

コマンドまとめ:


#python仮想環境に入る
source /xxx/[pythonenv]/bin/activate 
source /hikari/bin/activate
source /pythonprj/ramen/bin/activate

#djangプロジェクトのディレクトリへ移動
cd /xxx/[djangoproject] 
cd /hikari/front
cd /pythonprj/pasta

#DjangoでのDatadumpの手順
python manage.py clearsessions #不要なsessionデータを削除
python manage.py dumpdata --natural-foreign --exclude auth.permission --exclude contenttypes --indent 2 > db.json #データダンプ
python manage.py dumpdata [app] --indent 2 > [filename].json #アプリ指定でデータダンプ
python manage.py dumpdata flats --indent 2 > flats.json
python manage.py dumpdata auth --indent 2 > auth.json #userのみデータダンプ

#Djangoでのfixtureの整理
rm [filename].json #fixture消去
rm db.json
cd /var/www/ftp_dir #FTP用のディレクトリへ移動
cd /pythonprj/pasta #djangプロジェクトのディレクトリへ移動
cp [filename].json /var/www/[ftp directory] #FTP用のディレクトリへコピー
cp flats.json /var/www/ftp_dir
cp -r [directoryname] /var/www/[ftp directory] #FTP用のディレクトリへディレクトリそのものをコピー
cp -r static /var/www/ftp_dir
cp [filename].json /xxx/[djangoproject] #djangプロジェクトのディレクトリへコピー
cp flats.json /pythonprj/pasta

#DjangoからPostgresへのmigrationの手順
django projectのmigrationsフォルダを_init_.pyのみにする #djangoでmigarationファイルの初期化
/pythonprj/pasta/manage.py makemigrations
/pythonprj/pasta/manage.py makemigrations flats #特定のappのみ
/pythonprj/pasta/manage.py showmigrations
/pythonprj/pasta/manage.py migrate
/pythonprj/pasta/manage.py migrate flats #特定のappのみ

#Djangoでのloaddataの手順
python manage.py loaddata [filename].json #フィクスチュアをデータベースに入れる
python manage.py loaddata flats.json
/pythonprj/pasta/manage.py loaddata /var/www/ftp_dir/fla.json #FTP用ディレクトリから直接フィクスチュアをデータベースに入れる

#Postgresの動作確認
sudo systemctl status postgresql #状態確認
sudo systemctl restart postgresql #再起動
sudo systemctl enable postgresql #自動再起動の設定

探究資料:


djangoproject.com.
PostgreSQL 14.2 Documentation.

全文を読む


Django

Github

Python

Nginx

Windows

Linux

PostgreSQL

ウェブ

プログラミング

中学受験講座

高校受験講座

大学受験講座

社会人講座