気ままにふりーだむ

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

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

[Rails]deviseのファイル構成

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

Materializeとsimple_formでシンプルでいい感じのフォームを作りたい!

マテリアルデザイン「Materialize」とフォームの記述がシンプルな「simple_form」の実装をしたので、メモ。 GemfileにGemを記載からのbundle install [crayo …

画像アップロードCarrierwaveを導入する

画像アップロードのGem Carrierwaveの導入方法を忘れちゃうので、手順をメモ。 今回は画像リサイズのためmini_magickも導入します Gemfileを設定 それでは早速、下記Gemをイ …

[AWS]bundle exec cap production deployのエラーでつまった話

デプロイを行う際に発生したエラーで行なったことをメモ。 同じように困った方の参考になればと。 環境 ruby 2.3.1 Rails 5.0.7.2 MySQL git unicorn nginx c …

no image

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

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

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