2013-03-26 84 views
0

從模型的方法multilpe值我在我的模型下面的方法:返回鑑於

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 

如何調用變量不好,總,percentage_bad在我看來。 我想要什麼:

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

回答

1

你最好這樣做:你不調用此方法多次

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

這樣。

+0

儘管這種工作方式,總是一個好主意,以單獨的模型功能和意見我想補充一箇中間幫手。我相信哈里什有更好的答案。 – sameera207 2013-03-26 02:52:28

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