はじめに
Rails 6 に追加されそうな新機能を試す第60段。 今回は、 word_wrap
編です。
Rails 6 では、 word_wrap
時に元のテキストのインデントが適切に保持されるようになりました。
Ruby 2.6.3, Rails 6.0.0.rc1, Rails 5.2.3 で確認しました。Rails 6.0.0.rc1 は gem install rails --prerelease
でインストールできます。
$ rails --version
Rails 6.0.0.rc1
適当な文章を word_wrap
で整形して表示してみます。
Controller を作る
Controller と View を作ります。
$ bin/rails g contorller home index
HomeHelper を修正する
HomeHelper
module に word_wrap_message
を追加します。
word_wrap_message
の中で、 word_wrap
を使ってメッセージを整形します。
module HomeHelper
def word_wrap_message
msg = <<~MSG
This is a multiline message.
This is a second line of second paragraph. This is a second line part 2
of second paragraph.
This is a third paragraph. This line is a part 2 of third paragraph.
MSG
word_wrap(msg, line_width: 40)
end
end
View を修正する
View に word_wrap_messag
<h1>Home#index</h1>
<pre>
<%= word_wrap_message %>
</pre>
rails server を実行する
$ bin/rails s
ブラウザで確認する
http://localhost:3000/home/index を表示します。
Rails5 では
試したソース
試したソースは以下にあります。
https://github.com/suketa/rails6_0_0rc1/tree/try060_word_wrap
その他
文章がおかしいとか間違っているとかそういうところは、優しく見逃してやってください