0

モデルには次の方法があります。

  def self.set_bad_recommedation_size(rating_set)
    bad = Rating.where(rating_set: rating_set).where(label: 'Bad').count
    total = Rating.where(rating_set: rating_set).count
    percentage_bad = (bad.to_f/total.to_f * 100)
    return bad, total, percentage_bad
  end

ビューで変数bad、total、percentage_badを呼び出すにはどうすればよいですか。私が欲しいもの:

<%= "#{Model.set_bad_recommedation_size(rating_set).bad}/#{Model.set_bad_recommedation_size(rating_set).total"%>
4

2 に答える 2

1

あなたはやったほうがいいです:

<% bad, total, percentage_bad = Model.set_bad_recommedation_size(rating_set) %>
<%= "#{bad}/#{total}" %>

そうすれば、メソッドを複数回呼び出す必要がなくなります。

于 2013-03-26T02:33:47.560 に答える
1

ビューが読みやすくなるように、中間ヘルパーを追加します

<%= bad_recommendation_ratio(result_set) %>

Application.helper

def bad_recommendation_ratio(result_set)
  bad, total = Model.set_bad_recommedation_size(rating_set)
  "#{bad}/#{total}"
end
于 2013-03-26T02:41:56.163 に答える