の 1 つの属性を持つオブジェクトのリストがあります:text
。それぞれの最初の 250 文字だけを印刷したい:text
。
Railsでそれを行う簡単な方法はありますか?
これが私の反復のやり方です:
-@cows.each do |c|
%tr
%td= c.id
%td= c.description
%td
ここで、description
テキストです。
の 1 つの属性を持つオブジェクトのリストがあります:text
。それぞれの最初の 250 文字だけを印刷したい:text
。
Railsでそれを行う簡単な方法はありますか?
これが私の反復のやり方です:
-@cows.each do |c|
%tr
%td= c.id
%td= c.description
%td
ここで、description
テキストです。
使用できますtruncate
:
c.description.truncate(250, :separator => ' ')
自動的に追加"..."
され、区切りオプションがあるため、途中で単語が切り刻まれることを心配する必要はありません.
はい、これは通常の Ruby コードです。
%td= c.description[0..249]
string[n..m]
th 要素でstring
始まり、 th で終わるの部分文字列が得られます。http://ruby-doc.org/core-2.0/String.html#method-i-5B-5Dを参照n
m
おそらく、このコードがビューよりもモデルの方が優れているかどうかを検討する必要がありますか?