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

質問編集履歴

1

ああああああああ

2019/07/12 11:49

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -1,84 +1,14 @@
1
1
  ### 前提・実現したいこと
2
2
 
3
- Rails初心者ながらに、コーディネートを組むアプリを作っております。
4
- トップスの画像一覧、ボトムスの画像一覧、靴の画像一覧がそれぞれ並んでいて、ラジオボタンでその中から一つずつ選択し、選ばれた3つの画像情報をCollectionコントローラーで取得し、一つのコーディネートとして作成したいです。
5
3
 
6
- @top, @trouser, @shoe といったインスタンスはそれぞれ
7
- - top_image
8
- - trouser_image
9
- - shoe_image
10
4
 
11
- の属性を持ち、CarrierWaveを使ってアップロードされた画像を保持しております。
12
- CollectionsコントローラーからTopモデルの@tops、Trouserモデルの@trousers、Shoeモデルの@shoesを取得して、一覧表示しています。
13
5
 
14
- Collectionコントローラーのnew.html.slimで、@tops, @trousers, @shoesをそれぞれ一覧表示し、ラジオボタンで選択されたそれぞれ一つずつのパラムから:top_image, :trouser_image, :shoe_image を取得し、@collectionインスタンスを作成したいです。
15
-
16
- Collectionモデルも
17
- - top_image
18
- - trouser_image
19
- - shoe_image
20
- の3つのカラムを持っております。
21
-
22
-
23
6
  ### 該当のソースコード
24
- こちらがCollectionコントローラーのnew.html.slimです。
25
- ```Ruby
26
7
 
27
- = form_with model: @collection, url: collections_path , local: true do |f|
28
- .form-check
29
- - @tops.each do |top|
30
- = image_tag "#{top.top_image.url}"
31
- = label_tag :top_image
32
- =f.radio_button :top_image, top.top_image , checked: false
33
- .form-check
34
- - @trousers.each do |trouser|
35
- = image_tag "#{trouser.trouser_image.url}"
36
- =f.label :trouser_image
37
- =f.radio_button :trouser_image, trouser.trouser_image, checked: false
38
- .form-check
39
- - @shoes.each do |shoe|
40
- = image_tag "#{shoe.shoe_image.url}"
41
- =f.label :shoe_image
42
- =f.radio_button :shoe_image, shoe.shoe_image, checked: false
43
- =f.submit '登録', class: 'btn btn-primary'
44
- ```
45
- こちらがコントローラー側の処理です。
46
- ```Ruby
47
- class CollectionsController < ApplicationController
48
8
 
49
- ...
50
-
51
- def new
52
- @collection = Collection.new
53
- @shoes = Shoe.all
54
- @tops = Top.all
55
- @trousers = Trouser.all
56
- end
57
-
58
- def create
59
- @collection = Collection.new(collection_params)
60
- if @colletion.save
61
- flash.notice = 'コレクションを登録しました。'
62
- redirect_to collections_path
63
- else
64
- render 'new'
65
- end
66
- end
67
-
68
- private
69
- def collection_params
70
- params.require(:collection).permit(:top_image, :trouser_image, :shoe_image)
71
- end
72
- end
73
-
74
- ```
75
-
76
9
  ### 試したこと
77
10
 
78
- radio_buttonの引数をいじってみたのですが、頭の中がこんがらがってしまい、うまく動作しません。
79
11
 
80
12
  ### 補足情報(FW/ツールのバージョンなど)
81
13
 
82
- ここにより詳細な情報を記載してください。
14
+ ここにより詳細な情報を記載してください。
83
- Ruby - 2.6.3
84
- Rails - 5.2.3