2013-09-25 42 views
0

我们有QuestionsAnswers,并且每个问题has_many :answers和那些答案belongs_to :questionsRails .count action with specific:id

我想在CURRENT问题上显示答案的CURRENT计数。

我想在我的Answers_Controller:

def show 
    @question = Question.find(params[:question_id]) 
    @answers_count = @question.answers.count 
end 

,然后叫上我的看法<%= @answers_count %>

但我想我在这里失去了一些东西,因为没有显示。

回答

1

我发现我并不需要去请那些在我的控制,我可以代替就叫

<%= @question.answers.count %> 
0

尝试改变:

@answers_count = Question.answers.count 

到:

@answers_count = @question.answers.count 

你发现在你的第一行特定的问题,在分配给@question,但当时没有查询特定问题(使用问题,而不是@question)

此外,看看countsize之间的差异,以确保你不查询th ËDB比你更需要 - 这是一个很好的讨论:ActiveRecord: size vs count

+0

呀思想并已改变它:(但没有。 –

+0

找到了,我可以直接打电话给@ question.answers.count。出于某种原因,过去这没有奏效,我的问题中的解决方法奏效了。现在它的工作原理就是这样。 –