如何从控制器“计数”用户输入(How to “count” user inputs from a C

2019-10-18 15:14发布

我有一个@shows控制器,每一个用户都可以创建一个Show( 奇异 )。

在Show创作观( 显示/新 )我想显示有多少节目已经有一个计数器。

我试过了:

def count
  @shows.all.count
end
# in my Shows Controller

然后叫<%= @count %>在我的视图。 但我想这是不正确的做法。

我试图直接调用它在我的视野:

<%= @shows.count %>

但无论这个工作。

有人可以帮我吗 ?

Answer 1:

@show_count = Show.count会做你的工作。

在视图<%= @show_count%>



Answer 2:

你需要在创建@count变量new方法在控制器或从您的视图中使用一个辅助方法

控制器版本

def new
    # your other code here

    @count = Shows.count
    # @count is now available in your view for `new`
end

你总是可以简单地调用<%= @shows.count %>您的视图中。 是的,你应该只做最少的代码的东西在你看来,但这仅仅是一个简单的通话,而不是一个方法链做复杂的事情,所以这是正常的做到这一点。

随着给定的代码,我不能说,为什么@shows.count没有在视图中为你工作。 也许你忘了添加.all在你的控制?



文章来源: How to “count” user inputs from a Controller