Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

rails-footnotes

2,976 views

Published on

Published in: Technology
  • Login to see the comments

rails-footnotes

  1. 1. rails-footnotes の紹介 小川 伸一郎 (Rust/OGAWA, conceal-rs)
  2. 2. 自己紹介 ● 小川 伸一郎 ● Rust/OGAWA, id:conceal-rs ● Rails で携帯向け ML サービス構築 – 裏側担当 ● Ruby/Rails 歴 1 年ちょい ● 京都生まれの大阪育ち
  3. 3. rails-footnotes とは ● 簡単に言うとブラウザでデバッグできる – あぁ,このときの request.env 見たいけど・・・・ ● logger.debug request.env – いまこのページの Query は・・・・ ● tail -f log/development.log – session に設定されてるはずなんだけどなぁ・・・・ ● pp session というのを解決してくれるプラグイン ● インストールするだけで動く ● デフォルトで development 環境のみ表示される
  4. 4. インストール ● Rails 2.2.2 % git clone git://github.com/drnic/rails-footnotes.git vendor/plugins/footnotes % rm -rf vendor/plugins/footnotes/.git
  5. 5. Rails2.1.x でのインストール ● Rails 2.2.x 以外では README 通りでインストール できない % cd vendor/plugins/footnotes % git checkout v3.2.2 Note: moving to quot;v3.2.2quot; which isn't a local branch … % git branch * master % ● なので Download して展開 % wget http://github.com/drnic/rails-footnotes/tarball/v3.2.2 % tar zxvf drnic-rails-footnotes-SHA1HASH.tar.gz % mv drnic-rails-footnotes-SHA1HASH /path/to/app/vendor/plugins/footnotes
  6. 6. rails-footnotes をインストールすると
  7. 7. サンプルとして % rails footnotes; cd footnotes % ruby script/generate scaffold Post title:string name:string body:string % rake db:migrate % git clone git://github.com/drnic/rails-footnotes.git vendor/plugins/footnotes % rm -rf vendor/plugins/footnotes/.git % ruby script/server
  8. 8. rails-footnotes の特徴 (1/9) ● セッション
  9. 9. rails-footnotes の特徴 (2/9) ● Cookie
  10. 10. rails-footnotes の特徴 (3/9) ● request.params
  11. 11. rails-footnotes の特徴 (4/9) ● before_filter/after_filter/etc.
  12. 12. rails-footnotes の特徴 (5/9) ● routing
  13. 13. rails-footnotes の特徴 (6/9) ● request.env
  14. 14. rails-footnotes の特徴 (7/9) ● Queries
  15. 15. rails-footnotes の特徴 (7/9) ● Queries – explain – trace
  16. 16. rails-footnotes の特徴 (7/9) ● Queries – explain EXLAIN SELECT .... – trace どこの何行目か
  17. 17. rails-footnotes の特徴 (8/9) ● development.log
  18. 18. rails-footnotes の特徴 (9/9) ● お手軽に自分で拡張可能 – たとえば @post の内容を表示したいとき module Footnotes module Notes class PostNote < AbstractNote def initialize(controller) @post = controller.instance_variable_get(quot;@postquot;) end def legend quot;Post title: #{@post.title}quot; end def valid? @post end def content escape(@post.inspect) end end end end
  19. 19. rails-footnotes の特徴 (9/9) ● お手軽に自分で拡張可能 – たとえば @post の内容を表示したいとき
  20. 20. まとめ ● Rails アプリを開発するなら必須プラグイン ● ブラウザにデバッグ情報表示できる – Terminal いぱいに tail とかしなくていい ● EXPLAIN を見て MySQL に優しい開発 – EXPLAIN で適切なインデックス計画 ● 自分で拡張して情報表示 – @current_user とか表示してみるのもいいかも ● ただしインストールに難あり

×