お世話になります。
[Rails 4.x] Viewでアクションごとの条件分岐を綺麗に書く小技に記載されていたコードがどのように展開されているのかがよくわかりませんでした。
何が起こっているのか順を追って説明いただけないでしょうか?
before_action :request_path def request_path @path = controller_path + '#' + action_name def @path.is(*str) str.map{|s| self.include?(s)}.include?(true) ← ここで何が起こっているのかがわからない end end
上記アクションを使うと下記のように展開できるようです。
<% if @path.is('pages#index') %> ↓ <% if controller.controller_name == 'pages' && controller.action_name == 'index' %>
またこのコードをRails6でそのまま使おうとすると、RuboCopのエラーが出てしまいます。
こちらの回避方法もあわせて教えていただけると助かります。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/08/07 12:13