こんにちは。たなか(@tanaka_ricecake)です。
Ruby on RailsでWebアプリケーションサービスの開発をしています。
開発中、コードレビューいただいた中で、presenceメソッドを使ったスマートな書き方を学んだので備忘録的にメモします。
上手に使えればコードを短く綺麗に書くことができます。
もくじ
三項演算子をよりスマートに!presenceメソッドを使おう!
presenceメソッドとは?
オブジェクトが存在すればそのオブジェクトを返し、存在しなければnilを返すメソッドです。
@user.name.presence
上記のように書いた場合、『ユーザーが名前を持っていれば@user.nameを、なければnil』を返します。
今回のpresenceメソッド使用例
@news_article.transition_url ? @news_article.transition_url : 'なし'
上記のように『お知らせに遷移先URLがあればそれを表示、なければ「なし」を表示する』といった処理の際に、presenceメソッドを利用すれば以下のように書けます。
@news_article.transition_url.presence || 'なし'
繰り返しになっていた@news_article.transition_urlが一回で済み、見た目にもスッキリしましたね!
まとめ
今回はrailsのpresenceメソッドについてご紹介しました。
Twitterでもツイートしましたが、便利なメソッドを知って上手に書けると嬉しいですよね。
Railsって良い感じのメソッドで短くスマートに書けるとめっちゃ気持ちいいし楽しいですね✨
今日はpresenceメソッドで三項演算子をスマートに書く方法を学びました✍️
あとでブログにします— たなぼた@ゆるふわエンジニア (@tanaka_ricecake) July 25, 2019
今日はpresenceメソッドで三項演算子をスマートに書く方法を学びました
あとでブログにします
ソース内の、繰りかえしの多い記述なんかに注目しつつ、「もっと上手に書けないかな」という意識を持つことが大切だと感じました。
もっと上手にRails書けるようになりたいです。
便利なメソッドやリファクタリングのコツについて、これからもっと勉強していきます。
短いですが、今回はここまで。