teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

3

追記

2017/10/24 02:08

投稿

chelsy7110
chelsy7110

スコア596

answer CHANGED
@@ -15,4 +15,15 @@
15
15
  出力のこの部分がparamsとしてcontrollerに送られている部分です。
16
16
  ここで```params[:form][:bank][:bk_name]```と書くことで```"xyz銀行"```が取得出来ます。
17
17
  前の質問で```BankForm```を確認しましたが、```assign_attributes```は```@params = params```とやっているだけですので、更新するというコードが無いですね。
18
- それが原因だと思います。
18
+ それが原因だと思います。
19
+
20
+ ###### 追記の追記
21
+ 返事が遅くなり申し訳ありません。
22
+ BankFormのassign_attributesですが、中の```@bank```を更新するのですから
23
+ ```ruby
24
+ def assign_attributes(params = {})
25
+ @bank.assign_attributes(params)
26
+ end
27
+ ```
28
+ こんな感じにして、BankFormのassign_attributesを呼び出した場合は間接的に@bank.assign_attributesを呼び出しているという風にしてやればいいのではないでしょうか。
29
+ (paramsがどういう状況で送られてくるかによって記述は変わると思います)

2

追記

2017/10/24 02:08

投稿

chelsy7110
chelsy7110

スコア596

answer CHANGED
@@ -14,4 +14,5 @@
14
14
  ```
15
15
  出力のこの部分がparamsとしてcontrollerに送られている部分です。
16
16
  ここで```params[:form][:bank][:bk_name]```と書くことで```"xyz銀行"```が取得出来ます。
17
- 見た感じ、editとconfirmparamsに変化が無いようです。```bank_params```が気になるのですがどなってか?
17
+ 前の質問で```BankForm```を確認しました、```assign_attributes```は```@params = params```とやっていだけですので、更新るといコードが無ね。
18
+ それが原因だと思います。

1

追記

2017/10/19 00:59

投稿

chelsy7110
chelsy7110

スコア596

answer CHANGED
@@ -3,4 +3,15 @@
3
3
  presenterによって生成されたhtmlがおかしいような気がします。
4
4
 
5
5
  _bank_fields.html.erbがないので、前の質問を確認しました。
6
- 追記しておいたほうが回答がしやすくなると思います。
6
+ 追記しておいたほうが回答がしやすくなると思います。
7
+
8
+ ###### 追記
9
+ ```ruby
10
+ Parameters: {"utf8"=>"✓", "authenticity_token"=>"1chV0w0pxy53uFHxymlrUDzu1aIlq
11
+ ZXWPIvFui2YXpqKCfbAUqls2Yob43UadjW4nw7tfWWIupT+5v/+BCNv4Q==", "form"=>{"bank"=>{
12
+ "bk_name"=>"xyz銀行", "office"=>"いろは支店", "account"=>"1234567", "acc_name"=>
13
+ "佐藤一郎", "acc_name_kana"=>"サトウイチロウ"}}, "correct"=>"訂正", "host"=>"exa
14
+ ```
15
+ 出力のこの部分がparamsとしてcontrollerに送られている部分です。
16
+ ここで```params[:form][:bank][:bk_name]```と書くことで```"xyz銀行"```が取得出来ます。
17
+ 見た感じ、editとconfirmでparamsに変化が無いようです。```bank_params```が気になるのですがどうなっていますか?