[]:Array的未定义方法`find_by_provder_and_uid'

AnA*_*ice 2 ruby-on-rails ruby-on-rails-3

我跟着这里的教程:

http://asciicasts.com/episodes/235-omniauth-part-1
Run Code Online (Sandbox Code Playgroud)

在我的控制器中,我创建了以下方法:

  def create  
    auth = request.env["omniauth.auth"]
    current_user.authentications.find_or_create_by_provder_and_uid(auth['provider'], auth['uid'])
    flash[:notice] = "Authentication successful."
    redirect_to authentications_url  
  end
Run Code Online (Sandbox Code Playgroud)

问题是错误如此:

undefined method `find_by_provder_and_uid' for []:Array
Run Code Online (Sandbox Code Playgroud)

想法为什么?谢谢

Dyl*_*kow 5

看起来该页面有一个拼写错误 - 它应该是:

    current_user.authentications.find_or_create_by_provider_and_uid(auth['provider'], auth['uid'])
Run Code Online (Sandbox Code Playgroud)

最初的Railcast拼写正确.我刚刚给AsciiCasts作者发了电子邮件,通知他这个错字.