質問編集履歴

1

質問を少々簡潔にする

2017/12/13 22:54

投稿

zendendo
zendendo

スコア43

test CHANGED
File without changes
test CHANGED
@@ -12,12 +12,14 @@
12
12
 
13
13
  いわゆる複数のモデルが絡むバリデーションになると思うのですが、そうゆう場合は、フォームオブジェクトで設定した方がいいと聞き、
14
14
 
15
- フォームオブジェクトを作成してみたのですが、
15
+ フォームオブジェクトでバリデーションを作成してみたのですが、
16
16
 
17
17
  よくわからず、うまくいかず困っています。
18
18
 
19
19
 
20
20
 
21
+
22
+
21
23
  現状では、入力フォームで「支払先の口座番号」と「取引額」を入力すると、
22
24
 
23
25
  3つのモデルが同時に動くようになっています。
@@ -26,9 +28,11 @@
26
28
 
27
29
  ![イメージ説明](79698f8c56d8288ff027077398b008ab.png)
28
30
 
31
+ データのやりとりはこんな感じです。
32
+
29
33
  ![イメージ説明](d8d5435d7c127a1a2057b2645800546e.png)
30
34
 
31
- 例えば、支払ユーザーの口座残高が10000(1万)なら、1万を超える数値の入力を
35
+ 例えば、支払ユーザーの口座残高が10000(1万)なら、1万1以上の数値の入力を
32
36
 
33
37
  AmmountTransaction(取引)モデルのamount(取引額)、
34
38
 
@@ -120,13 +124,13 @@
120
124
 
121
125
  この固有の処理もフォームオブジェクトやサービスクラスに
122
126
 
123
- 移動させた方がいいのですが、ひとまずおいておきます。
127
+ フォームオブジェクトに移動させた方がいいのですが、質問の本題から離れるのでひとまずおいておきます。
124
-
128
+
125
- コントローラには、フォームオブジェクトを呼び出す記述をすると思うのですが、
129
+ コントローラには、フォームオブジェクトを呼び出すコードを記述をすると思うのですが、
126
-
130
+
127
- 仮に複数のモデルが絡むバリデーションだけを行うフォームオブジェクトの場合、
131
+ 仮に複数のモデルが絡む**バリデーションだけを行うフォームオブジェクトの場合、
128
-
132
+
129
- どこにどんな記述をすればいいのでしょうか?
133
+ どこにどんな記述をすればいいのでしょうか**
130
134
 
131
135
 
132
136
 
@@ -296,7 +300,7 @@
296
300
 
297
301
  3つのモデルの状態です。
298
302
 
299
- ```ここに言語を入力
303
+ ```ruby
300
304
 
301
305
  create_table "account_transactions", force: :cascade do |t|
302
306