herokuにデータベースを使ったWEBアプリをあげるならdumpdataが便利

最近アプリをherokuにアップしようとしたんだけど、データベースあげる際、うまくいかなくて困ってるんだ

もしかしてsqliteのデータベースをアップしようとしているなら、もうひと作業必要になってくるかもしれないな

AOUNIも一苦労したので、やり方について解説するよ♪

今回、PubmedTransという個人作成アプリをherokuにあげた時、7800くらいのデータがsqliteに格納されていたのですが・・・。

最初herokuにアップしたときデータベースが移行されていなかった・・・ので、検索ができなかった。

どうしようと思ったときに見つけたのが

dumpdata

なるもの。

よし、試してみましょう!

※Pubmed Transはの説明はこちらから

https://blueninini.com/%e5%80%8b%e4%ba%ba%e9%96%8b%e7%99%ba%e3%81%97%e3%81%9fweb%e3%82%b5%e3%83%bc%e3%83%93%e3%82%b9%e3%83%bbweb%e3%82%a2%e3%83%97%e3%83%aa%e5%85%ac%e9%96%8b%ef%bc%81%e2%91%a0pubmedtrans%e3%80%9c%e3%83%91/

https://qiita.com/bluenouni/items/828d0b6273ad2c1ff1c8

まずは、最新コードをgitにアップ

もはや癖づいている、念の為、アップしましょう。

一度アップしていたら、これで最新のものにできるよ

$ git status
$ git add --all .
$ git status
$ git commit -m "Added view and template for detailed blog post as well as CSS for the site."
$ git push

データベースの中のデータをjsonファイルに落とし込む

<pre class="prism undefined-numbers lang-plain" data-line="<!-- wp:spacer --> <div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div> python manage.py dumpdata --exclude auth.permission --exclude contenttypes > DB名.json

反映されているか不安な方は、jsonファイルを開いて新しく登録したデータを検索かけてヒットすれば、OKです。

またgitにあげる

①の繰り返しでOKです!

herokuの方にデータ送る

heroku run python manage.py loaddata DB名.json

こんな感じで、object(データの個数)が出てきたらちゃんと完了できています!

Installed 7146 object(s) from 1 fixture(s)

思ってたより超簡単!!!

参考にしたサイトはこちらです。

https://www.denzow.me/entry/2017/09/06/223517

読んでくれてありがとうでした♪