【今更解説するエラー解決】
あなたの課題を解決する、どうもめたっぴの泉へようこそ。
今日の患者さんはめたっぴさんです。
司会は私、めたっぴ
解説はめたっぴが務めさせていただきます今日はどうかよろしくお願いします
よろしくお願いします。
めたっぴ「ユーザー登録に 職業ってあるんですけどいくら入力しても反映されず
無職のママなんですよねー。」
医者「なるほど、となるとお腹見せてもらっていいですか?」
めたっぴ 「ここで職業を選んで選択したあと SAVEしても
なぜかプレイヤー名と誕生日しか反映されないんですよー しかもどの職業でも一緒でー いてて」
医者「なるほど、、、」
(ここでガリレオの曲が流れる)
【考えられる可能性】
・そもそもこの職業自体保存されていないんじゃないか?
・なめえと誕生日が反映されているってことはきっと
「職業の保存」だけ弾かれている可能性がある
・これを弾くとすれば、、、ストロングパラメーターの設定、
MVCでいう「コントローラー」か?!
・もしかしてDevise(べんりgemの一つ)とか使ってる?
【解決方法】
とりあえずデータが保存されてるか確認するか
$ rails c
コンソール開いたら
User.find(ユーザーのID入れる)
いまはユーザー数少ないから
User.all
で全員分見てみる
[#<User id: 2, email: [FILTERED], name: "kani", birthday: "2026-01-14", gender: false, crypted_password: [FILTERED], created_at: "2026-01-14 12:16:20.937670000 +0000", updated_at: "2026-01-14 12:16:20.937670000 +0000", job: nil>,
#<User id: 6, email: [FILTERED], name: "uni", birthday: "2012-01-03", gender: true, crypted_password: nil, created_at: "2026-01-17 04:17:02.646712000 +0000", updated_at: "2026-01-17 04:17:02.646712000 +0000", job: nil>,
#<User id: 7, email: [FILTERED], name: "てすとっぴ", birthday: "2010-01-01", gender: true, crypted_password: nil, created_at: "2026-01-21 13:52:33.962547000 +0000", updated_at: "2026-01-28 06:02:52.464236000 +0000", job: nil>,
#<User id: 8, email: [FILTERED], name: "テストプレイヤー", birthday: "1944-01-28", gender: true, crypted_password: nil, created_at: "2026-01-28 14:59:59.897511000 +0000", updated_at: "2026-01-28 14:59:59.897511000 +0000", job: nil>]
myapp(dev)>
ほ、保存されてなああああああああああああああ愛
gender が true(どういうことやねん) ※こっちはまた別件で直します
job が nil(無えっす) つまり無職
(これはきっとストロングパラメーターで弾かれてる可能性あるな、、、、
全知全能である アプリケーションコントローラー見てみるか。。。。)
やはり、、、全く設定されていない。。。。
新規登録の時用ね
def configure_permitted_parameters
devise_parameter_sanitizer.permit(:sign_up, keys: [
:name,
:birthday,
:gender,
:job
])
アップデートの時用ね(編集画面)
devise_parameter_sanitizer.permit(:account_update, keys: [
:name,
:birthday,
:gender,
:job
])
end
これでよしっと。(keys:の後のパラメーターを いってよし!状態に)
どうですか〜
めたっぴ「お!治りました、ありがとうございます。それでお代金の程は、、、、、」
3割負担で777円ですー
めたっぴ「WOW LOOKS SO LUCKY NUMBER yeah」
HAHAHA
Good Day!
〜Fin(ゴリ押し)〜



