質問編集履歴

2

エラー内容の変更

2020/01/11 06:18

投稿

takuya-mashimo
takuya-mashimo

スコア5

test CHANGED
@@ -1 +1 @@
1
- Twitterログイン機能を実装したいが、callbackする所でNoMethodError (undefined method `[]' for nil:NilClass)起きてしまう
1
+ Twitterログイン機能を実装したいが、NoMethodError (undefined method `id' for "てしまう
test CHANGED
File without changes

1

uidのみでログインできるようにしたら異なるエラーが出てしまいました。

2020/01/11 06:18

投稿

takuya-mashimo
takuya-mashimo

スコア5

test CHANGED
File without changes
test CHANGED
@@ -26,7 +26,7 @@
26
26
 
27
27
  ```
28
28
 
29
- NoMethodError (undefined method `[]' for nil:NilClass):app/controllers/sessions_controller.rb:15:in `create'
29
+ NoMethodError (undefined method `id' for "1085900685269299200-twitter@example.com":String):app/controllers/sessions_controller.rb:10:in `create'
30
30
 
31
31
  ```
32
32
 
@@ -38,27 +38,19 @@
38
38
 
39
39
  ```herokulogs
40
40
 
41
- 2020-01-10T14:44:46.239114+00:00 app[web.1]: I, [2020-01-10T14:44:46.239029 #4] INFO -- : [eb779fde-03ad-437d-95ec-e3730bb6e6d0] Started GET "/auth/twitter" for 202.151.123.154 at 2020-01-10 14:44:46 +0000
42
-
43
- 2020-01-10T14:44:46.239624+00:00 app[web.1]: I, [2020-01-10T14:44:46.239573 #4] INFO -- omniauth: (twitter) Request phase initiated.
44
-
45
- 2020-01-10T14:44:49.863582+00:00 app[web.1]: I, [2020-01-10T14:44:49.863492 #4] INFO -- : [7b218b9d-3d76-43ea-b406-7cff78a122b4] Started GET "/auth/twitter/callback?oauth_token=JcY6RAAAAAABBrtcAAABb4_qLJQ&oauth_verifier=lqkC2O868UyekctvlDspgJ5OK0d1BQav" for 202.151.123.154 at 2020-01-10 14:44:49 +0000
46
-
47
- 2020-01-10T14:44:49.864640+00:00 app[web.1]: I, [2020-01-10T14:44:49.864570 #4] INFO -- omniauth: (twitter) Callback phase initiated.
48
-
49
- 2020-01-10T14:44:50.100268+00:00 app[web.1]: I, [2020-01-10T14:44:50.100142 #4] INFO -- : [7b218b9d-3d76-43ea-b406-7cff78a122b4] Processing by SessionsController#create as HTML
50
-
51
- 2020-01-10T14:44:50.100341+00:00 app[web.1]: I, [2020-01-10T14:44:50.100266 #4] INFO -- : [7b218b9d-3d76-43ea-b406-7cff78a122b4] Parameters: {"oauth_token"=>"JcY6RAAAAAABBrtcAAABb4_qLJQ", "oauth_verifier"=>"lqkC2O868UyekctvlDspgJ5OK0d1BQav", "provider"=>"twitter"}
52
-
53
- 2020-01-10T14:44:50.101562+00:00 app[web.1]: I, [2020-01-10T14:44:50.101490 #4] INFO -- : [7b218b9d-3d76-43ea-b406-7cff78a122b4] Completed 500 Internal Server Error in 1ms (ActiveRecord: 0.0ms)
54
-
55
- 2020-01-10T14:44:50.102105+00:00 app[web.1]: F, [2020-01-10T14:44:50.102036 #4] FATAL -- : [7b218b9d-3d76-43ea-b406-7cff78a122b4]
56
-
57
- 2020-01-10T14:44:50.102190+00:00 app[web.1]: F, [2020-01-10T14:44:50.102124 #4] FATAL -- : [7b218b9d-3d76-43ea-b406-7cff78a122b4] NoMethodError (undefined method `[]' for nil:NilClass):
58
-
59
- 2020-01-10T14:44:50.102270+00:00 app[web.1]: F, [2020-01-10T14:44:50.102189 #4] FATAL -- : [7b218b9d-3d76-43ea-b406-7cff78a122b4]
60
-
61
- 2020-01-10T14:44:50.102375+00:00 app[web.1]: F, [2020-01-10T14:44:50.102315 #4] FATAL -- : [7b218b9d-3d76-43ea-b406-7cff78a122b4] app/controllers/sessions_controller.rb:15:in `create'
41
+ 2020-01-10T15:38:55.521220+00:00 app[web.1]: I, [2020-01-10T15:38:55.521099 #4] INFO -- : [2a9a85d8-ba86-4690-8f80-fd5b68e321ea] Processing by SessionsController#create as HTML
42
+
43
+ 2020-01-10T15:38:55.521806+00:00 app[web.1]: I, [2020-01-10T15:38:55.521733 #4] INFO -- : [2a9a85d8-ba86-4690-8f80-fd5b68e321ea] Parameters: {"oauth_token"=>"h6Zl4wAAAAABBrtcAAABb5AbrwY", "oauth_verifier"=>"qs7ctVofKAniNYibNMfXeZW4VYDDxn86", "provider"=>"twitter"}
44
+
45
+ 2020-01-10T15:38:55.525388+00:00 app[web.1]: I, [2020-01-10T15:38:55.525301 #4] INFO -- : [2a9a85d8-ba86-4690-8f80-fd5b68e321ea] Completed 500 Internal Server Error in 3ms (ActiveRecord: 0.0ms)
46
+
47
+ 2020-01-10T15:38:55.526243+00:00 app[web.1]: F, [2020-01-10T15:38:55.526174 #4] FATAL -- : [2a9a85d8-ba86-4690-8f80-fd5b68e321ea]
48
+
49
+ 2020-01-10T15:38:55.526392+00:00 app[web.1]: F, [2020-01-10T15:38:55.526317 #4] FATAL -- : [2a9a85d8-ba86-4690-8f80-fd5b68e321ea] NoMethodError (undefined method `id' for "1085900685269299200-twitter@example.com":String):
50
+
51
+ 2020-01-10T15:38:55.526526+00:00 app[web.1]: F, [2020-01-10T15:38:55.526460 #4] FATAL -- : [2a9a85d8-ba86-4690-8f80-fd5b68e321ea]
52
+
53
+ 2020-01-10T15:38:55.526666+00:00 app[web.1]: F, [2020-01-10T15:38:55.526572 #4] FATAL -- : [2a9a85d8-ba86-4690-8f80-fd5b68e321ea] app/controllers/sessions_controller.rb:10:in `create'
62
54
 
63
55
  ```
64
56
 
@@ -72,19 +64,19 @@
72
64
 
73
65
  class User < ApplicationRecord
74
66
 
75
- validates :name, presence: true, length: { maximum: 50 }
67
+ validates :name, presence: true, length: { maximum: 50 }, unless: :uid?
76
68
 
77
69
  validates :email, presence: true, length: { maximum: 255 },
78
70
 
79
71
  format: { with: /\A[\w+\-.]+@[a-z\d\-.]+.[a-z]+\z/i },
80
72
 
81
- uniqueness: { case_sensitive: false }
73
+ uniqueness: { case_sensitive: false },unless: :uid?
82
74
 
83
75
 
84
76
 
85
- has_secure_password
77
+ has_secure_password nalidations: false
78
+
86
-
79
+ validates :password, presence: true, unless: :uid?
87
-
88
80
 
89
81
 
90
82
 
@@ -122,6 +114,8 @@
122
114
 
123
115
  end
124
116
 
117
+
118
+
125
119
  ```
126
120
 
127
121