回答編集履歴

2

回答の誤りを修正(アカウント更新なら :account_update を指定するのが正しい)

2020/03/05 03:24

投稿

shinoharat
shinoharat

スコア1685

test CHANGED
@@ -41,3 +41,61 @@
41
41
  end
42
42
 
43
43
  ```
44
+
45
+
46
+
47
+ --
48
+
49
+
50
+
51
+ ## 追記(2020/3/5)
52
+
53
+
54
+
55
+ すみません。上記の回答で
56
+
57
+
58
+
59
+ > 【2】アカウント登録・編集画面を変えたいなら :sign_in ではなく :sign_up を指定してください。
60
+
61
+
62
+
63
+ と書きましたが、間違いでした。
64
+
65
+ 正しくは
66
+
67
+
68
+
69
+ アカウント登録なら :sign_up を指定
70
+
71
+ アカウント更新なら :account_update を指定
72
+
73
+
74
+
75
+ です。
76
+
77
+ 最終的には以下のようなコードになると思います。
78
+
79
+
80
+
81
+ ```rb
82
+
83
+ before_action :configure_permitted_parameters, if: :devise_controller?
84
+
85
+
86
+
87
+ private
88
+
89
+
90
+
91
+ # 登録&更新時にユーザーネームとセレクトエージェントを許可する
92
+
93
+ def configure_permitted_parameters
94
+
95
+ devise_parameter_sanitizer.permit(:sign_up, keys: [:user_name, :select])
96
+
97
+ devise_parameter_sanitizer.permit(:account_update, keys: [:user_name, :select])
98
+
99
+ end
100
+
101
+ ```

1

誤字修正

2020/03/05 03:24

投稿

shinoharat
shinoharat

スコア1685

test CHANGED
@@ -6,11 +6,11 @@
6
6
 
7
7
 
8
8
 
9
- 【2】アカウント登録・編集画面を変えたいなら `:sign_in` でなく `:sign_up` を指定してください。
9
+ 【2】アカウント登録・編集画面を変えたいなら `:sign_in` でなく `:sign_up` を指定してください。
10
10
 
11
11
 
12
12
 
13
- 【3】 `devise_parameter_sanitizer.for` って見慣れなかったので調べたのですが、かなり古い書き方みたいです。
13
+ 【3】 `devise_parameter_sanitizer.for` というメソッド、見慣れなかったので調べたのですが、かなり古い書き方みたいです。
14
14
 
15
15
  [公式のページで紹介されている新しい書き方(devise_parameter_sanitizer.permit)](https://github.com/heartcombo/devise#strong-parameters) に変えてみてください。
16
16