TIS ENGINEER NOTE

ITエンジニアのためのキャリア向上ノウハウブログ

プログラミング

【Rails5】deviseでOmniauthが上手く動かなかったときのメモ

更新日:

入れたgemは

gem 'omniauth'
gem 'omniauth-facebook'
gem 'omniauth-twitter'

http://ruby-rails.hatenadiary.com/entry/20140805/1407200400

http://qiita.com/kami_zh/items/94aec2d94a2b4e9a1d0b

基本的にはこのあたりの参考に進めていきました。

Twitterの認証画面まではすんなりといったのですが、サイト側に戻ってきた時に

まずはaction『twitter』が見つからないとのエラーが

The action 'twitter' could not be found for Devise::OmniauthCallbacksController

原因を探している中、rake routesしてみると、

user_facebook_omniauth_authorize GET|POST /users/auth/facebook(.:format) devise/omniauth_callbacks#passthru
user_facebook_omniauth_callback GET|POST /users/auth/facebook/callback(.:format) devise/omniauth_callbacks#facebook
user_twitter_omniauth_authorize GET|POST /users/auth/twitter(.:format) devise/omniauth_callbacks#passthru
user_twitter_omniauth_callback GET|POST /users/auth/twitter/callback(.:format) devise/omniauth_callbacks#twitter

devise/omniauth_callbacks?

作業進めていく中でルーティングが参考サイトと異なるなあとは思っていたのですが、コントローラーにdeviseなんてディレクトリはない。

もしかしたらdeviseカスタマイズでコントローラー生成していたのが原因かなーと思い、

route.rbに

devise_for :users, :controllers => {
# 省略
:omniauth_callbacks => "users/omniauth_callbacks"
}

を追記

すると別エラー。アクションは無事見つかった模様です。

ActiveModel::ForbiddenAttributesError

参考にしたサイトからコピペしてきたuser.rb

where(auth.slice(:provider, :uid)).first_or_create do |user|

の部分が引っかかっている模様

ちょうどドンピシャな質問をしている掲示板を見つけました。

http://stackoverflow.com/questions/25399414/rails-4-1-5-omniauth-strong-parameters

ここの回答と同様の対応をしたところ無事に新規登録画面に戻ってきてくれました。

Railsのルーティングや規則に不慣れなことから来る初歩的なミスでした…

自分と同様の実装をお考えで、同様の事象に悩まされている方のお役に立てればと思います。

閲覧いただき、ありがとうございました。

こちらの記事もオススメ

https://tisnote.com/ruby-on-rails-memorandum/

よく読まれている記事

エンジニア独立

2019/4/15

プログラマーがフリーランスになって独立するために必要なスキル

こんにちは、フリーエンジニアのてぃすです。 ITエンジニアが独立するべきか、しないべきか。昨今のエンジニア・プログラマーの働き方議論において、最もホットなのがこの話題じゃないでしょうか。 賛否については、それぞれの立場や環境によって感情論も混ざって言い分は異なりますし、経験したこともない人の否定意見も飛び交って魑魅魍魎が跳梁跋扈な感じです。 なので今回はそういった賛否ではなく、実際にプログラマーをはじめとするITエンジニアが独立するためにはどの程度のスキル・経歴が必要かについてお話していこうと思います。 ...

続きを読む

エンジニア独立

2019/4/20

【時給2000円以上】経験者が語る派遣エンジニアの魅力

どうも、フリーランスエンジニアのてぃすです。 巷で語られているITエンジニアの働き方といえば、正社員 or フリーランス、というのが主流として語られています。 しかしITエンジニアにとって美味しい働き方がもう1つ存在しています。 それが今回紹介する派遣エンジニアです。 ぼくもフリーランスエンジニアとして独立する前の準備期間に派遣エンジニアを活用しました。 今日はその派遣エンジニアという働き方の魅力と活用方法について紹介していきます。 派遣エンジニアとは 今回紹介する派遣エンジニアという働き方を一言で表すと ...

続きを読む

エンジニア独立

2019/4/29

技術を選んで働くエンジニアになるために

どうも、フリーランスエンジニアのてぃすです。 ITエンジニアと一言で言っても扱っている技術によって働き方は様々です。 また働き方に加えて、将来的なキャリアの展望も使う技術によって大きく変わってきます。 ぼくはエンジニアとして扱う技術を変化させていき、現在は週3でリモート中心でマイペースに働きながらゆとりを持って暮らせるくらいは稼げる程度にまで持っていけました。 そこで今回はITエンジニアが使う技術を選ぶことの大切さと、実際に選ぶためのテクニックについてご紹介していきます。 技術を選ぶ事による効能 まずは使 ...

続きを読む

エンジニア独立

2019/5/29

転職したいエンジニアの背中を押す記事

知人であったり、SNS上で知り合いのエンジニアの中には、今の職場に不満を感じ、転職したいという思いを募らせている人が結構な割合います。 僕からしたら絶賛売り手市場であるエンジニア業界において、劣悪な労働環境に耐えるという選択は非常に勿体無いことだと考えています。 確かにIT業界における技術者というのは、非常に需要のある立場ですが、慎重に働く場所を選ばなければ搾取される可能性が高いです。 技術という武器を持っているエンジニアならば、ストレスなく効率よく働くべき場所を求めて行動を起こすべきだと思うんですよね。 ...

続きを読む

エンジニア独立

2019/4/15

フリーランスエンジニアとして働くことの実情

こんにちは、フリーランスエンジニアのてぃすです。 最近は本業が忙しくブログの更新が滞っておりました。更新を楽しみにしてくださった方々、申し訳ありませんでした。 今後もエンジニアにとって有益な情報を提供できるよう更新を再開していこうと思いますので、引き続きよろしくお願いいたします。 フリーランスエンジニアの実情 このブログではフリーランスエンジニアとして働くことの利点や、実際にどのようなステップでフリーランスエンジニアになるかについての記事をなんども書いてきました。 しかし実際にフリーランスエンジニアとして ...

続きを読む

-プログラミング
-,

Copyright© TIS ENGINEER NOTE , 2020 All Rights Reserved Powered by AFFINGER5.