2012-04-26 15 views
1

私は、コーチが複数のチームをコーチできるチームと多くのコーチを持つことができる多対多の関係を持つバスケットボールアプリを持っています。Rails 3.2.x未定義のメソッド 'join'

Coaches_Controller.rb

def index 
    @coaches = Coach.joins(:teams).select("coaches.first_name, coaches.last_name, teams.team_level") 

    respond_to do |format| 
     format.html # index.html.erb 
     format.json { render json: @coaches } 
    end 
    end 

Index.html.erb

<% @coaches.each do |coach| %> 
     <tr> 
     <td><%= link_to coach.first_name, coach_path(coach) %></td> 
     <td><%= coach.last_name %></td> 
     <td><%= coach.team_level %></td> 
     <td> 
      <%= link_to t('.edit', :default => t("helpers.links.edit")), 
         edit_coach_path(coach), :class => 'btn btn-mini' %> 
      <%= link_to t('.destroy', :default => t("helpers.links.destroy")), 
         coach_path(coach), 
         :method => :delete, 
         :confirm => t('.confirm', :default => t("helpers.links.confirm", :default => 'Are you sure?')), 
         :class => 'btn btn-mini btn-danger' %> 
     </td> 
     </tr> 
    <% end %> 

私はこのエラーを取得しています、と私はなぜ非常にわからないんだけど...

http://i.stack.imgur.com/5a6oB.png

アイデア?私はそれが私が見ていない小さな何かのように感じる...ありがとう!

答えて

1

私が間違って見ることができることの1つは、selectcoaches.idが含まれていないことです。 coach_path(coach)にはidが必要です。これを試してみてください:

@coaches = Coach.joins(:teams).select("coaches.id, coaches.first_name, coaches.last_name, teams.team_level") 

ない、これはあなたが取得しているjoinエラーを解決するかどうか確認してください。

+0

ああフィドルスティック、それは私が見て簡単に何かが分かっていた。私にダムバディを感じさせてくれてありがとう、P – mrcolombo