投稿したURLをリンクにしたい!!!
結論からいうと、Gemをインストールすれば簡単に解決できます!
イメージが湧きやすいように実際の画像で説明します。
↓↓↓↓↓↓
②このような感じでリンクが押せない状態で投稿されてしまう。
rinku というGemをインストールすれば問題は解決できる。
③Gemfileにrinkuを追加。
gem 'rinku'
bundle install
これでrinkuをインストールできました。
viewのコードをrinkuに対応した形式に書き換える。
④erbファイルを、rinkuに対応したコードに書き換えます。
<%= post.link %>
↓↓↓↓↓
<%= Rinku.auto_link(post.link, :all, 'target="_blank"').html_safe %>
これだけでリンクとして反映されています。
ただこれだけだと、もしもリンクを投稿しない場合、「データがnilですよ」というエラーが発生する可能性があります。
そんな時はlinkの投稿フォームにあらかじめバリデーションをかけておくか、
<% if post.link.nil? %>
<%= post.link %>
<% else %>
<%= Rinku.auto_link(post.link, :all, 'target="_blank"').html_safe %>
<% end %>
...と、if文でlinkというカラムにデータが存在するか否かを条件分岐してあげれば解決できます。
ちなみに、'target="_blank"'があると外部リンク、無いと内部リンクになるようです。
確認してみると、このようにリンクといえばお馴染みの青色が着色されました。
リンクを押せば、外部のサイトにも飛べるようになるはずです。