簡體   English   中英

Ruby on Rails未定義方法

[英]ruby on rails undefined method

sharvil@sharvil:~/railstut/blog$ rails c

Loading development environment (Rails 4.2.1)
2.2.2 :001 > q=Question.all

  Question Load (0.5ms)  SELECT `questions`.* FROM `questions`
 => #<ActiveRecord::Relation [#<Question questions_id: 1, question: "What is this", almuni_almuni_id: 1, category_category_id: 1>]> 

2.2.2 :002 > q

 => #<ActiveRecord::Relation [#<Question questions_id: 1, question: "What is this", almuni_almuni_id: 1, category_category_id: 1>]> 

2.2.2 :003 > q.question

NoMethodError: undefined method `question' for #<Question::ActiveRecord_Relation:0x000000045dc178>
    from /home/sharvil/.rvm/gems/ruby-2.2.2/gems/activerecord-4.2.1/lib/active_record/relation/delegation.rb:136:in `method_missing'

我在訪問q.questions時遇到錯誤..問題是表中的列。

請幫助。

您需要做q.first.question 您的q問題的集合,而不是Question的實例。 您在question集合上調用了question方法,這就是為什么您會得到錯誤。

在您的情況下, q是問題收集

q.each do |que|
  puts que.question
end

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM