質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Q&A

0回答

985閲覧

Railsのバリデーションに引っかかった後のrenderについて

Nobu18

総合スコア4

Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

0グッド

0クリップ

投稿2020/05/26 08:55

編集2020/05/26 08:59

Railsのrenderについて質問です。

バリデーションエラーを取得するために、入力ミスをしてrenderさせたところ、下記コードの中身がすっぽり抜けてしまっています。

.form-data__item.form-data__image #ここから下がビューから消えてしまいます-------------------------------- = f.fields_for :images do |img| .form-title =img.label "出品画像" .form-title__required %label 必須 .form-condition %p 最大4枚までアップロードできます .form-input-image %div{"data-index": "#{img.index}" ,class:"js-file_group"} #previews =choosed_image(@item) =img.file_field :image, class: 'js-file' .js-remove 削除

通常時は問題ないのですが、render後だけ表示されません。下にビュー全体のコードを記入してあります。
どのようにしたら通常表記にできますでしょうか。。。

該当のソースコード

new.html.haml

ruby

1= render 'items/form'

_form.html.haml

ruby

1.put-item-page 2 =form_with model: @item,url: items_path(@item), local: true do |f| 3 .put-item-page__topimage 4 = image_tag "material/logo/logo.png", height: "50px", width: "200px" 5 .put-item-page__form 6 .form-data 7 .form-data__item.form-data__image 8#ここからrender後にビューに表示されない----------------------------------------------------------- 9 = f.fields_for :images do |img| 10 .form-title 11 =img.label "出品画像" 12 .form-title__required 13 %label 必須 14 .form-condition 15 %p 最大4枚までアップロードできます 16 .form-input-image 17 %div{"data-index": "#{img.index}" ,class:"js-file_group"} 18 #previews 19 =choosed_image(@item) 20 =img.file_field :image, class: 'js-file' 21 .js-remove 22 削除 23#ここまでビューに表示されない----------------------------------------------------------- 24 .form-data__item 25 .form-title 26 =f.label "商品名" 27 .form-title__required 28 %label 必須 29 .form-input-text 30 =f.text_field :item_name, placeholder: "商品名を入力してください" 31 .form-title 32 =f.label "商品説明" 33 .form-title__required 34 %label 必須 35 .form-input-textarea 36 =f.text_area :explanation, placeholder: "商品の説明\n(色、素材、定価など)\n\n例)2010年ごろ購入したセーターです。ライトグレーで、目立った傷や汚れはございません。" 37 38 .form-data__item 39 .form-group 40 %label 商品詳細 41 .form-title 42 %label カテゴリ 43 .form-title__required 44 %label 必須 45 .form-input-select 46 -# = f.select :category, @category_parent_array 47 .form-title 48 =f.label "ブランド" 49 .form-title__any 50 %label 任意 51 .form-input-text 52 =f.text_field :brand, placeholder:"ブランドを入力してください" 53 .form-title 54 =f.label "商品の状態" 55 .form-title__required 56 %label 必須 57 .form-input-select 58 =f.select :condition, {選択してください:"",傷あり:"傷あり",状態は良い:"状態はよい",未使用:"未使用",} 59 60 .form-data__item 61 .form-group 62 %label 配送について 63 .form-title 64 =f.label "配送元の地域" 65 .form-title__required 66 %label 必須 67 .form-input-select 68 %select 69 %option{value:""} 70 選択してください 71 %option{value:@address} 72 =@address 73 .form-title 74 =f.label "発送までの日数" 75 .form-title__required 76 %label 必須 77 .form-input-select 78 =f.select :ship_date,{選択してください:"",2日以内:"2日以内",5日以内:"5日以内",1週間程度:"1週間程度",} 79 .form-title 80 =f.label "配送料の負担について" 81 .form-title__required 82 %label 必須 83 .form-input-select 84 =f.select :delivery_fee,{選択してください:"",出品者負担:"出品者負担",購入者負担:"購入者負担"} 85 86 .form-data__item.form-data__price 87 .form-group 88 %label 価格(¥300 ~9,999,999) 89 .form-price-flex 90 .form-title 91 =f.label "販売価格" 92 .form-title__required 93 %label 必須 94 =f.number_field :price, value: 0 95 .form-price-flex 96 %label 販売手数料 97 %label 100098 .form-price-flex 99 %label 販売利益 100 %label 4000101 .form-data__submit 102 =f.submit value: "出品する"

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

winterboum

2020/05/27 23:33

controllerを載せてください
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問