1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

【Rails】viewにおけるlink_toで実体参照したい

1
Last updated at Posted at 2019-10-06

「3ヶ月連続アウトプット」、1日目です。

今回は、Railsの「link_to」で「>」を実体参照しようとしてうまくいかなかったので調べてみました。

現象

sample.html.erb
<%= link_to "パスワードをお忘れの方はこちら &gt;", "/path", class: "underline" %>
ブラウザ上
パスワードをお忘れの方はこちら #&gt;

link_toで実体参照したところ、そのまま文字列として出力されてしまった。
ううむ。

解決方法

色々と探してみたところ、「html_safe」を対象文字列の後にメソッドチェーンしてあげることで解決しました。

sample.html.erb(修正後)
<%= link_to "パスワードをお忘れの方はこちら &gt;".html_safe, "/path", class: "underline" %>
ブラウザ上
パスワードをお忘れの方はこちら #&gt;

「html_safe」とは?

Stringクラスで用意されているメソッド。
文字列にエスケープ処理を加えたくない時に使用する。

後日談、というか今回のオチ

調べていて気づいてしまったのですが、そもそもこれ実体参照する必要なくないか・・・?
どうやらコントローラーからビューへ文字列を引っ張ってくる際によく使うみたい。
多少時間を使ってしまったけど、「まぁ知れたから今後役に立つでしょ!」とポジティブに考えておこう、うん!

参考サイト

HTML特殊文字のエスケープ - Ruby on Rails入門

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?