回答編集履歴
2
へ
answer
CHANGED
@@ -1,23 +1,27 @@
|
|
1
|
-
|
1
|
+
やはりそもそもsessionが空なことが問題ですかね
|
2
2
|
|
3
|
-
```
|
4
|
-
|
3
|
+
form_withの`scope`の挙動がよくわかっていないのですが以下のうようにするとどうですか?
|
5
4
|
|
6
|
-
|
5
|
+
|
7
|
-
params.require(:session).permit(:email, :password) #この行に問題があるようです。
|
8
|
-
end
|
9
6
|
```
|
7
|
+
= form_with scope: :sessions, local: true do |f| #sessions => sessionでいかがでしょうか
|
8
|
+
.form-group
|
9
|
+
= f.label :email, 'メールアドレス'
|
10
|
+
= f.text_field :email, class: 'form-control', id: 'session_email'
|
11
|
+
.form-group
|
12
|
+
= f.label :password, 'パスワード'
|
13
|
+
= f.password_field :password, class: 'form-control', id: 'session_password'
|
14
|
+
= f.submit 'ログインする', class: 'btn btn-primary'
|
15
|
+
```
|
10
16
|
|
11
|
-
|
17
|
+
[Ruby on Rails 5.1 リリースノート - Railsガイド](https://railsguides.jp/5_1_release_notes.html#form-for%E3%81%A8form-tag%E3%81%AEform-with%E3%81%B8%E3%81%AE%E7%B5%B1%E5%90%88)
|
12
18
|
|
13
|
-
---
|
14
|
-
session[:user_id]は使用されているようなので
|
15
|
-
以下
|
19
|
+
以下はそのまま
|
16
20
|
|
17
21
|
```
|
18
22
|
private
|
19
23
|
|
20
24
|
def session_params
|
21
|
-
params.require(:session).permit(:
|
25
|
+
params.require(:session).permit(:email, :password) #この行に問題があるようです。
|
22
26
|
end
|
23
27
|
```
|
1
変更
answer
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
params[:session]が:emailや:passwordといった属性を扱う必要があるのかと思い以下のように回答しました
|
2
|
+
|
1
3
|
```
|
2
4
|
private
|
3
5
|
|
@@ -6,4 +8,16 @@
|
|
6
8
|
end
|
7
9
|
```
|
8
10
|
|
9
|
-
この部分がないとどうですか?
|
11
|
+
この部分がないとどうですか?
|
12
|
+
|
13
|
+
---
|
14
|
+
session[:user_id]は使用されているようなので
|
15
|
+
以下で置き換えるといかがでしょうか
|
16
|
+
|
17
|
+
```
|
18
|
+
private
|
19
|
+
|
20
|
+
def session_params
|
21
|
+
params.require(:session).permit(:user_id) #ほかに必要があれば属性追記
|
22
|
+
end
|
23
|
+
```
|