質問編集履歴

4

追記

2018/10/19 14:36

投稿

zendendo
zendendo

スコア43

test CHANGED
File without changes
test CHANGED
@@ -250,7 +250,7 @@
250
250
 
251
251
 
252
252
 
253
- ###追記(アドバイスに従い修正)
253
+ ###追記(アドバイスに従い修正、ミスあり
254
254
 
255
255
  ルーティング設定を変更。
256
256
 

3

アドバイスに従い最終追記

2018/10/19 14:36

投稿

zendendo
zendendo

スコア43

test CHANGED
File without changes
test CHANGED
@@ -1,8 +1,10 @@
1
1
  ###実現したいこと
2
2
 
3
- ruby on railsで確認画面とnewに戻るボタン付きの新規作成を実装しているのでが、
3
+ ruby on railsで確認画面(confirmアクション)新規作成画面(newアクション)に戻るボタン付きの新規作成機能を実装してい
4
+
4
-
5
+ アクションを跨がっても変数を維持したいのですが、
6
+
5
- newに戻ったとき、変数の内容の維持の仕方がわからなくて困っています。
7
+ confirmからnewに戻ったとき、変数維持するがわからなくて困っています。
6
8
 
7
9
 
8
10
 
@@ -301,3 +303,37 @@
301
303
  コード
302
304
 
303
305
  ```
306
+
307
+ ###最終追記(アドバイスに従い最終的に成功したコード)
308
+
309
+ ルーティングの設定です。
310
+
311
+ ```ここに言語を入力
312
+
313
+ resources :users do
314
+
315
+ resources :transactions, controller: :account_transactions do
316
+
317
+ collection do
318
+
319
+ post 'confirm'#確認画面
320
+
321
+ end
322
+
323
+ end
324
+
325
+ end
326
+
327
+ #このコードにより、user_id(アクションを跨がっても維持したい情報)を含めたURLパターンになる。
328
+
329
+ #/users/:user_id/transactions/confirm(.:format)
330
+
331
+ #/users/:user_id/transactions/new(.:format)
332
+
333
+ ```
334
+
335
+ あとは、各アクションで、
336
+
337
+ ** @account = BasicIncomeAccount.find_by(user_id: params[:user_id])**
338
+
339
+ と入力すれば、アクションを跨いでも同じ内容を取得できました。

2

アドバイスを参考にコード修正

2018/10/19 14:35

投稿

zendendo
zendendo

スコア43

test CHANGED
File without changes
test CHANGED
@@ -243,3 +243,61 @@
243
243
  確認画面からnew画面に戻ったときは、Accountのshowページからのlink_toパラメータがつくられないことが原因だと思いますが、
244
244
 
245
245
  もし、この@@accountの内容を維持したい場合はどうすればいいのか、教えて頂ければ幸いです。
246
+
247
+
248
+
249
+
250
+
251
+ ###追記(アドバイスに従い修正)
252
+
253
+ ルーティング設定を変更。
254
+
255
+ ```ここに言語を入力
256
+
257
+ Rails.application.routes.draw do
258
+
259
+
260
+
261
+
262
+
263
+ #アカウント関連
264
+
265
+ resources :accounts, :only => [:index,:show]
266
+
267
+ resources :accounts do
268
+
269
+ resources :transactions, controller: :account_transactions
270
+
271
+ member do
272
+
273
+ post 'confirm', :transactions, controller: :account_transactions#問題の部分
274
+
275
+ end
276
+
277
+ end
278
+
279
+
280
+
281
+ #取引記録関連
282
+
283
+ resources :account_transactions, :only => [:new, :create, :index, :show]
284
+
285
+
286
+
287
+ resources :account_transactions do
288
+
289
+ collection do
290
+
291
+ post 'confirm'#記録内容確認画面用
292
+
293
+ end
294
+
295
+ end
296
+
297
+
298
+
299
+ end
300
+
301
+ コード
302
+
303
+ ```

1

2018/10/18 12:53

投稿

zendendo
zendendo

スコア43

test CHANGED
File without changes
test CHANGED
@@ -22,7 +22,7 @@
22
22
 
23
23
  ```ここに言語を入力
24
24
 
25
- <%= link_to "記録作成する", new_comment_path(:account_number => @user.account_number), class: 'btn btn-danger btn-lg' %>
25
+ <%= link_to "記録作成する", new_account_transaction_path(:account_number => @account1.account_number), class: 'btn btn-danger btn-lg' %>
26
26
 
27
27
  ```
28
28