回答編集履歴
1
じゃぁ何が悪いのか\?
test
CHANGED
@@ -81,3 +81,35 @@
|
|
81
81
|
|
82
82
|
|
83
83
|
といった感じで1つづつ潰していってください。
|
84
|
+
|
85
|
+
|
86
|
+
|
87
|
+
----
|
88
|
+
|
89
|
+
|
90
|
+
|
91
|
+
じゃぁ何が悪いのか **persist?** が `true` でないという事は **create** に失敗しています。
|
92
|
+
|
93
|
+
createに失敗する理由はいくつかありますが `create!` にする事で create に失敗した時点で例外が発生するので
|
94
|
+
|
95
|
+
|
96
|
+
|
97
|
+
```ruby
|
98
|
+
|
99
|
+
def self.from_omniauth(auth)
|
100
|
+
|
101
|
+
where(provider: auth.provider, uid: auth.uid).first_or_create! do |user| ←first_or_createがあるので①の問題は発生していない…?
|
102
|
+
|
103
|
+
user.provider = auth.provider
|
104
|
+
|
105
|
+
user.uid = auth.uid
|
106
|
+
|
107
|
+
end
|
108
|
+
|
109
|
+
end
|
110
|
+
|
111
|
+
```
|
112
|
+
|
113
|
+
|
114
|
+
|
115
|
+
として例外メッセージを読めばなぜ first_or_create が失敗したのかわかるはずです。
|