sinatraの簡単なdebug kit作ったので使い方を紹介!


どんなデバックキットか

models.rbで定義されている全部のモデルに対して、全検検索して中身をみることができるものです。
将来的には、

  • 明示的に全件検索するモデルを選択できる
  • session情報、非同期request情報、log出力、インスタンス変数あたりの情報を見れるようにする

このあたりの機能も追加して行きたいと思っています。

install

普通にgemをinstallします

CommandLine
gem install aldy_debug_kit_sqlite3

初期設定

少し抵抗があるかもしれませんが、初期設定コマンドはこれです。

CommandLine
aldy

これを実行すると全件検索した結果を表示するための、erbファイルとgetリクエストを受け取れるアクションが定義されているrubyファイルが生成されます。

  • views/aldy_show_sqlite3_tables.erb
  • show_table_action.rb

debug kitを使ってみる

上で作られた2つのファイルを使っていきます。

app.rbでgemとshow_table_action.rbファイルをrequireしていきます

app.rb
require 'aldy_debug_kit_sqlite3'
require './show_table_action.rb'

これができれば、あとは、 /modelsにgetリクエストでアクセスすると
テーブル一覧をみることができます。
こんな感じです。
※ HiddenがHeddenになっていますが、最新バージョンではタイポ直してます。

ちょっと生成されたファイルがどう動いてるかを見てみる

みるべきはshow_table_action.rbですね

show_table_action.rb
get '/models' do 
  @models = AldyDebugKitSqlite3.getTables
  erb :aldy_show_sqlite3_tables
end 

このAldyDebugKitSqlite3.getTablesという関数でで全モデル情報を取得しています。
それを aldy_show_sqlite3_table.rbというtemplateファイルで表示しています。

最後に

機能的にそこまでではないですが、初学者の方でGUIアプリケーションを設定するのが苦手な方など、使っていただけると幸いです。
わかりにくい説明などありましたら、どんどんコメントしてください。

隠しコマンド

ぜひこれ使ってみてください。デバックしてないので、本当に動くかわかりませんが、
動いていないので、バージョンアップをお待ちください

CommandLine
sushi