从控制器显示erb的结果

时间:2017-08-29 04:53:01

标签: ruby-on-rails render erb

目前我正在使用Rails。

我有erb形式,我想要做的是显示功能的结果 在控制器中erb

def total_ratings
    total_ratings = 1000
    Score.where('ratings_count > ?', 0).each do |score|
      total_ratings += score.ratings_count
    end

    render total_ratings
end

将total_ratings作为数字后,

我试图以erb格式显示这样的total_ratings

<div class="page-header-description">ratings : <%= score_total_ratings_scoring_index_path %></div>

但这只打印了路径,而不是结果。我错过了哪一点?

1 个答案:

答案 0 :(得分:3)

将您的函数从控制器移动到辅助模块,以在视图中渲染。

# app/helpers/application_helper.rb
module ApplicationHelper
  def total_ratings
    total_ratings = 1000
    Score.where('ratings_count > ?', 0).each do |score|
      total_ratings += score.ratings_count
    end

    total_ratings
  end
end

现在在视图中呈现它:

<div class="page-header-description">ratings : <%= total_ratings %></div>

详细了解Rails helpers