気ままにふりーだむ

学習やメモなどを投稿します。プログラミング仲間や仕事、求人の話は大募集。気軽にフォローやいいねいただけると励みになります!

Rails プログラミング

[Rails]ヘルパーメソッドを作る!

投稿日:

こんにちは!
今回はヘルパーメソッドについてのまとめです。
ヘルパーメソッドを自分で作成してみたいと思います。

それでは早速いってみましょう!

そもそもヘルパーメソッドとは

そもそもヘルパーメソッドなんぞやってことなんですけど、
一言で言うなら「Viewのコードを簡単に書けるようにしてくれるもの」です。

Railsでもともと用意されている便利なものもありますが、
自分で書いたコードで条件分岐などで記載が長くなってしまったものや
使用頻度が高いものはヘルパーメソッドとしてまとめることもできます。

代表的なヘルパーメソッド

<%= link_to%> リンクを簡単に作成できる
<%= form_tag%> formを簡単に作成できる

上記はRailsを触ったことがある方であれば、ご存知ではないでしょうか。

例えば<%= link_to%>はリンクを簡単に作成できるヘルパーメソッドです。
Viewファイル(html.erbファイル)にリンクを追加したいとき、
通常であれば「<a href=””></a>」のように書く必要がありますが、
<%= link_to%>を使うとリンクも簡単に追加できます。

ヘルパーメソッドを作成する

代表的なヘルパーメソッドでも記載したようなRailsでは最初から使用できる
ヘルパーメソッドはたくさんあります。ヘルパーメソッドは自分で作成することも可能です。
というわけで今回は自分でヘルパーメソッドを作成したいと思います。

・ヘルパーメソッドを書くファイル

まずヘルパーメソッドを作成する場所ですが、

「app/helpers/」以下のファイルになります。

複数モデルで使用する場合は、「application_helper.rb」
特定のモデルのみで使用する場合は「(使用するモデル名)_helper.rb」

・「金額に円とつける処理」をヘルパーメソッドで書く

今回は単純に金額の最後に「円」とつける処理をヘルパーメソッドで書いてみます。

各ファイル下記のように書きました。

今回特定モデルのみ(product)使用なので、「products_helper.rb」に
ヘルパーメソッドを書きます。そしてViewファイル(index.html.erb)で
ヘルパーメソッドを呼び出すという感じです。

短いコードであれば特にメリットは感じないですが、これが長くなると
わざわざ書くのは面倒なのでヘルパーメソッドで楽になりそうですね!

-Rails, プログラミング

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

チャットアプリにメッセージの編集と削除ボタンをつける

やりたいこと 現在チャットアプリを作っており、投稿したメッセージの編集と削除を行うために まずはボタンを配置したいと思っています。またそのボタンは常時表示させるのでなく、 該当メッセージにカーソルが当 …

no image

正規表現全然わからん!でもまとめる!

正規表現について、まとめます! 使うときのためにメモ。 \d 1個の半角数字(0123456789) \dは「1個の半角数字」なので、\d\dは「半角数字2個」の意味 [crayon-5dee77b3 …

no image

[Ruby]「class クラス名 end」という記述じゃないクラス定義

クラス定義は通常下記のように行いますよね。

上記を用いないでクラス定義する方法について学んだのでメモ。 結論からいうと下記のような記載 …

no image

[Rails]deviseのファイル構成

こんばんは。 表題の件について、どのページでみたかは忘れてしまったのですが、 deviseをinstallした時に作成されるファイルの構成をメモのため、 投稿します。参照元がわかったらまた追記させてい …

no image

jQueryでmapメソッドを使う!

mapメソッドについてまとめます! 基本的にはeachメソッドと同じ。jQueryオブジェクトの場合は記載が違うので注意は必要。 またmapメソッドの引数として関数を使用する方法について記載します。 …