0

リンクされたgemをオムニ認証可能なデバイスRailsプラットフォームと統合するために、このリンクをたどろうとしています。

http://renderedtext.com/blog/2011/08/17/how-to-use-linkedin-gem-with-omniauth/

2つの簡単な質問!

  1. 一番下の「class LinkedinFactory」ファイルはアプリ内のどこにあり、何と呼ばれますか? 上記のリンクにディレクトリ/ファイル名が表示されません。

  2. 現在、LinkedIn からログインしようとすると、次のように言ってアプリケーションが失敗します。

    OmniauthCallbacksController#linkedin の NoMethodError

    nil:NilClass の未定義メソッド「create_linkedin_connection」

「create_linkedin_connection」メソッドをどこでどのように定義しますか? omn​​iauth_callbacks.rb コントローラーの 3 行目で呼び出されます。

def linkedin
    omniauth_hash = env["omniauth.auth"]
    current_user.create_linkedin_connection(
      :token  => omniauth_hash["extra"]["access_token"].token,
      :secret => omniauth_hash["extra"]["access_token"].secret,
      :uid    => omniauth_hash["uid"]
    )
    redirect_to root_path, :notice => "You've successfully connected your LinkedIn account."
  end

ありがとうございました!

4

1 に答える 1

0

1) ユーザー定義のクラスは、通常、lib ディレクトリに配置する必要があります。

2) current_user で "create_linkedin_connection" メソッドを呼び出しています。この場合、そのメソッドは Users コントローラーにある必要があります。変更したら、routes.rb ファイルでルートを指定する必要があります。ルートは次のように定義する必要があります

match '/auth/callback', to: 'users#create_linkedin_connection'
于 2012-07-30T23:24:28.147 に答える