Driftデータベースの中身はDevToolsで確認できる
端末にデータベースを持つモバイルアプリを開発していると、データベースの中身を確認したいことがありますよね。
Flutter では Isar や Realm を用いることも多いと思います。これらは当初からデータベースの中身を確認するためのツールが提供されています。
SQLite ベースの Drift では、これまでデータベースの中身を確認するためのツールは drift_db_viewer を使用することが一般的でした。そして、アプリの中でデータベースの中身を確認するための画面を作成することが多かったはずです。
しかし、先日 DevTools に拡張機能を実装できるようになりました。
そして、これを利用して DevTools 上で Drift データベースの中身を確認することができるようになりました。
公式ドキュメントにその方法が記載されていますが、それだけではわかりにくい部分もあるため、ここに手順をまとめておこうと思います。
1. DevTools を起動する
まずは DevTools を起動する必要があります。(もちろん Flutter アプリを実行している状態で行ってください)
VSCode ではコマンドパレット(Cmd + Shift + P
)から Flutter: Open DevTools
を選択することで起動できます。
AndroidStudio や command line からも起動できます。起動方法はこちらを参照してください。
2. Drift タブを開く
DevTools のメイン画面が開いたら、画面上部のタブ一覧から Drift
タブを開きます。
すると、この拡張機能を利用するかどうか尋ねられるので、Enable
を選択します。
No
を選択してしまった場合でも、画面上部の拡張機能のアイコンから再設定することができます。
3. データベースを選択する
Drift
タブを開くと、画面左側にデータベース一覧が表示されます。データベースを選択すると、そのデータベースに含まれるテーブル一覧が表示されます。
テーブルを選択すると、そのテーブルに含まれるレコード一覧が表示されます。
drift_db_viewer
と同様にフィルタリングやソートも可能です。(実は中で動いているのは drift_db_viewer
です)
おわりに
DevTools に Drift 拡張機能が追加されたことで、Drift データベースの中身を確認するための画面を作成する手間が省けるようになりました。
Drift パッケージも DevTools Extension も非常に便利なので、これからも積極的に利用していけると効率よく開発ができそうですね。
Discussion