我在我的模型中定义了一个非常复杂的方法,我认为它是:
def self.current_rating(recommendation_id, rating_set, product_id)
if !Recommendation.find(recommendation_id).ratings.find_by_rating_set(rating_set).nil?
Recommendation.find(recommendation_id).ratings.find_by_rating_set(rating_set).rating.to_i
elsif !Recommendation.find(recommendation_id).ratings.find_by_product_id(product_id).nil?
Recommendation.find(recommendation_id).ratings.find_by_product_id(product_id).rating.to_i
else
end
end
在我看来,我打电话给:
:selected => Rating.current_rating(rec.id,params[:rating_set_id], params[:product_id])
在我的select_tag
.
基本上我想检查第一次查找是否返回任何内容,是否nil
检查第二次查找,如果nil
没有返回任何内容。我如何将其重构为更好/更具语法性?