回答編集履歴

2 わける

hana-da

hana-da score 1576

2016/11/04 15:52  投稿

お疲れの hana-da ですw
`app/helpers/o_auth_service/o_auth_policy.rb` を `app/helpers/o_auth_policy.rb` にすればいいような気がします。
----
こむずかしいですが [定数の自動読み込みと再読み込み](http://railsguides.jp/autoloading_and_reloading_constants.html) に通常必要な事はだいたい書いてあります。
サーバーの再起動はしましたよね?
それでダメなら分けてみますか。。。。(helpersに置いてあるのもちょっと気になりますが。。。。)
`app/helpers/o_auth_policy/base.rb`
```ruby
module OAuthPolicy
 class Base
   attr_reader :provider, :uid, :name, :nickname, :email, :url, :image_url,
               :description, :other, :credentials, :raw_info
 end
end
```
`app/helpers/o_auth_policy/facebook.rb`
```ruby
module OAuthPolicy
 class Facebook < OAuthPolicy::Base
   def initialize(auth)
     @provider   = auth["provider"]
     @uid        = auth["uid"]
     @name       = auth["info"]["name"]
     @nickname   = ""
     @email      = ""
     @url        = "https://www.facebook.com/"
     @image_url  = auth["info"]["image"]
     @description = ""
     @credentials = auth["credentials"].to_json
     @raw_info   = auth["extra"]["raw_info"].to_json
     freeze
   end
 end
end
```
`app/helpers/o_auth_policy/twitter.rb`
```ruby
module OAuthPolicy
 class Twitter < OAuthPolicy::Base
   def initialize(auth)
     @provider   = auth["provider"]
     @uid        = auth["uid"]
     @name       = auth["info"]["name"]
     @nickname   = auth["info"]["nickname"]
     @email      = ""
     @url        = auth["info"]["urls"]["Twitter"]
     @image_url  = auth["info"]["image"]
     @description = auth["info"]["description"].try(:truncate, 255)
     @credentials = auth["credentials"].to_json
     @raw_info   = auth["extra"]["raw_info"].to_json
     freeze
   end
 end
end
```
----
こむずかしいですが [定数の自動読み込みと再読み込み](http://railsguides.jp/autoloading_and_reloading_constants.html) に通常必要な事はだいたい書いてあります。
1 こむずかしいはなし

hana-da

hana-da score 1576

2016/11/04 15:49  投稿

お疲れの hana-da ですw
`app/helpers/o_auth_service/o_auth_policy.rb` を `app/helpers/o_auth_policy.rb` にすればいいような気がします。
`app/helpers/o_auth_service/o_auth_policy.rb` を `app/helpers/o_auth_policy.rb` にすればいいような気がします。
----
こむずかしいですが [定数の自動読み込みと再読み込み](http://railsguides.jp/autoloading_and_reloading_constants.html) に通常必要な事はだいたい書いてあります。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る