DjangoでDBデータを扱うときの備忘録。よく使うけど、忘れるので。
DBのデータをダンプする
# 全テーブル出力 $ python manage.py dumpdata --indent 2 --format json # モジュールの全テーブル出力 $ python manage.py dumpdata <mymodule> --indent 2 # 特定のテーブル出力 $ python manage.py dumpdata <mymodule>.<model> --indent 2 # ダブルバイト文字はunicodeで表示されるので、native2asciiなどで変換 $ python manage.py dumpdata --indent 2 --format json | native2ascii -reverse
- refs: django-admin and manage.py | Django documentation | Django
- refs: ネイティブコードからUnicodeへ変換(native2ascii) - Javaソースファイルのエンコーディング - Java入門
DBのデータをロードする
# <filename>のロード $ python manage.py loaddata <filename>
おまけ、shellでファイルを実行する
$ python manage.py shell < myscript.py $ python manage.py shell ... >>> execfile('myscript.py') # Python2.x >>> exec(open('myscript.py').read()) # Python3.x
import os, django os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myapp.settings") django.setup()
以上!!