Madogiwa Blog

主に技術系の学習メモに使っていきます。

rails勉強botでActionViewのメソッドが呟かれるようになりました🎉

みなさん、こんばんは。 昨日までrubykaigi2019で福岡に行ってたまどぎわです💎🍜

表題の通り、rails勉強botActionViewのメソッドがつぶやかれるようになりました🙌

ActionViewのメソッドは、割と忘れがちな気もするので気になるメソッドがあったら見てみてください👀✨

👇ActionViewrailsガイドでいうとこの辺です

railsguides.jp

またrails勉強botの中身をリファクタリング(?)して、簡単につぶやくClassを追加できるようにしました🎉

こんな感じで追加出来ます!簡単🙌

class MessageBuilder::ActionView::Base < MessageBuilder::Base
  RAILS_CLASS = ActionView::Base
  RAILS_TOP_CLASS_NAME = 'actionview'.freeze
  RAILS_CLASS_FILE_REGXP = /action_view.*/.freeze
  RAILS_CLASS_REGXP = /action_view/.freeze
end

MessageBuilder::Baseにclassからメソッドをランダムに取得したり、 メソッドのsource_locationを取得して、Githubへのリンクを生成したりする処理を実装して、 それらを継承するようにしました。

(一旦楽になったけど、継承という選択が正しかったのかどうかは微妙・・・。一応、MessageBuilder::ActionView::Baseは、MessageBuilderであるはis-aの関係になっている気もするので、まぁいいかという気持ち🙈)

👇MessageBuilder::Baseの実装が気になる方はこちら

github.com

ruby勉強botも主要classしか呟かないようにしてたけど、rubykaigiに参加してTracepointとかコアなclassの内容も少し知りたくなってきたので、ちょっとつぶやくClassを追加していこうかなと思いました💪

それでは😴