コメントの数に基づいて異なるテキストを表示する必要があり、ロジックをコントローラーに配置しました。しかし、コントローラーに長いメソッドがあると、あまり乾燥していないように見えます。代わりにどこに配置すればよいですか?
example_controller.rb:
def index
.
count_dependent_message
.
end
def count_dependent_message
case @user.comment.count
when 0
@strong = "example Strong 0"
@paragraph = "example paragraph 0"
when 1
@strong = "Jon Smith is called Smith"
@paragraph = "example paragraph 1"
when 2...10
@strong = "Once upon a time...Steve Jobs... "
@paragraph = "example paragraph 2"
when 11...40
@strong = "Wow you have many counts"
@paragraph = "example paragraph 3"
else
@strong = "exciting"
@paragraph = "example paragraph 4"
end
end
見る:
<h3>
<strong>
<%= @strong %>
</strong>
</h3>
<p>
<%= @paragraph %>
</p>
ロジックを部分的に配置することを考えましたが、レンダリングしたいテキストは単なる文であるため、あまり効率的ではないようです。