#問題点
collection_selectの記述を行った際にname errorが出ました。
rails
1NameError in Items#new 2 3Showing /Users/sewwolf.gt/projects/furima-36825/app/views/items/new.html.erb where line #83 raised: 4<%= f.collection_select(:delivery_time_id, Delivery_time.all, :id, :name, {}, {class:"select-box", id:"item-scheduled-delivery"}) %> 5 6uninitialized constant #<Class:0x00007fca7da96d30>::Delivery_time
#エラーに対して確認したこと
- new.html.erbの記述の確認
- コントローラー、ルーティングの確認
- モデルの記述の確認
- 似たような事例の検索
name errorなので記述ミスだと考えたのですが見つけることができませんでした。
#コード
rails
1# delivery_time.rb 2class Delivery_time < ActiveHash::Base 3 self.data = [ 4 { id: 1, name: '---' }, 5 { id: 2, name: '1~2日で発送' }, 6 { id: 3, name: '2~3日で発送' }, 7 { id: 4, name: '4~7日で発送' } 8 ] 9 include ActiveHash::Associations 10 has_many :items 11 end 12
rails
1# item.rb 2class Item < ApplicationRecord 3 4 validates :item_name, presence: true 5 validates :detail, presence: true 6 validates :category_id, numericality: { other_than: 1, message: "can't be blank"} 7 validates :condition_id, numericality: { other_than: 1, message: "can't be blank" } 8 validates :postage_id, numericality: { other_than: 1, message: "can't be blank" } 9 validates :area_id, numericality: { other_than: 1, message: "can't be blank" } 10 validates :delivery_time_id, numericality: { other_than: 1, message: "can't be blank" } 11 12 extend ActiveHash::Associations::ActiveRecordExtensions do 13 belongs_to :category 14 belongs_to :condition 15 belongs_to :delivery_time 16 belongs_to :area 17 end 18end
rails
1# new.html.erb 2 <%= form_with model: @item, local: true do |f| %> 3 <%# インスタンスを渡して、エラー発生時にメッセージが表示されるようにしましょう。%> 4 <% render 'shared/error_messages', model: f.object %> 5 <%# //インスタンスを渡して、エラー発生時にメッセージが表示されるようにしましょう。%> 6 7 <%# 商品画像 %> 8 <div class="img-upload"> 9 <div class="weight-bold-text"> 10 商品画像 11 <span class="indispensable">必須</span> 12 </div> 13 <div class="click-upload"> 14 <p> 15 クリックしてファイルをアップロード 16 </p> 17 <%= f.file_field :hoge, id:"item-image" %> 18 </div> 19 </div> 20 <%# /商品画像 %> 21 <%# 商品名と商品説明 %> 22 <div class="new-items"> 23 <div class="weight-bold-text"> 24 商品名 25 <span class="indispensable">必須</span> 26 </div> 27 <%= f.text_area :item_name, class:"items-text", id:"item-name", placeholder:"商品名(必須 40文字まで)", maxlength:"40" %> 28 <div class="items-explain"> 29 <div class="weight-bold-text"> 30 商品の説明 31 <span class="indispensable">必須</span> 32 </div> 33 <%= f.text_area :detail, class:"items-text", id:"item-info", placeholder:"商品の説明(必須 1,000文字まで)(色、素材、重さ、定価、注意点など)例)2010年頃に1万円で購入したジャケットです。ライトグレーで傷はありません。あわせやすいのでおすすめです。" ,rows:"7" ,maxlength:"1000" %> 34 </div> 35 </div> 36 <%# /商品名と商品説明 %> 37 38 <%# 商品の詳細 %> 39 <div class="items-detail"> 40 <div class="weight-bold-text">商品の詳細</div> 41 <div class="form"> 42 <div class="weight-bold-text"> 43 カテゴリー 44 <span class="indispensable">必須</span> 45 </div> 46 <%= f.collection_select(:category_id, Category.all, :id, :name, {}, {class:"select-box", id:"item-category"}) %> 47 <div class="weight-bold-text"> 48 商品の状態 49 <span class="indispensable">必須</span> 50 </div> 51 <%= f.collection_select(:condition_id, Condition.all, :id, :name, {}, {class:"select-box", id:"item-sales-status"}) %> 52 </div> 53 </div> 54 <%# /商品の詳細 %> 55 56 <%# 配送について %> 57 <div class="items-detail"> 58 <div class="weight-bold-text question-text"> 59 <span>配送について</span> 60 <a class="question" href="#">?</a> 61 </div> 62 <div class="form"> 63 <div class="weight-bold-text"> 64 配送料の負担 65 <span class="indispensable">必須</span> 66 </div> 67 <%= f.collection_select(:postage_id, Postage.all, :id, :name, {}, {class:"select-box", id:"item-shipping-fee-status"}) %> 68 <div class="weight-bold-text"> 69 発送元の地域 70 <span class="indispensable">必須</span> 71 </div> 72 <%= f.collection_select(:area_id, Area.all, :id, :name, {}, {class:"select-box", id:"item-prefecture"}) %> 73 <div class="weight-bold-text"> 74 発送までの日数 75 <span class="indispensable">必須</span> 76 </div> 77 <%= f.collection_select(:delivery_time_id, Delivery_time.all, :id, :name, {}, {class:"select-box", id:"item-scheduled-delivery"}) %> 78 </div> 79 </div> 80 <%# /配送について %> 81 82 <%# 販売価格 %> 83 <div class="sell-price"> 84 <div class="weight-bold-text question-text"> 85 <span>販売価格<br>(¥300〜9,999,999)</span> 86 <a class="question" href="#">?</a> 87 </div> 88 <div> 89 <div class="price-content"> 90 <div class="price-text"> 91 <span>価格</span> 92 <span class="indispensable">必須</span> 93 </div> 94 <span class="sell-yen">¥</span> 95 <%= f.text_field :price, class:"price-input", id:"item-price", placeholder:"例)300" %> 96 </div> 97 <div class="price-content"> 98 <span>販売手数料 (10%)</span> 99 <span> 100 <span id='add-tax-price'></span>円 101 </span> 102 </div> 103 <div class="price-content"> 104 <span>販売利益</span> 105 <span> 106 <span id='profit'></span>円 107 </div> 108 </span> 109 </div> 110 </div> 111 <%# /販売価格 %> 112 113 <%# 注意書き %> 114 <div class="caution"> 115 <p class="sentence"> 116 <a href="#">禁止されている出品、</a> 117 <a href="#">行為</a> 118 を必ずご確認ください。 119 </p> 120 <p class="sentence"> 121 またブランド品でシリアルナンバー等がある場合はご記載ください。 122 <a href="#">偽ブランドの販売</a> 123 は犯罪であり処罰される可能性があります。 124 </p> 125 <p class="sentence"> 126 また、出品をもちまして 127 <a href="#">加盟店規約</a> 128 に同意したことになります。 129 </p> 130 </div> 131 <%# /注意書き %> 132 <%# 下部ボタン %> 133 <div class="sell-btn-contents"> 134 <%= f.submit "出品する" ,class:"sell-btn" %> 135 <%=link_to 'もどる', root_path, class:"back-btn" %> 136 </div> 137 <%# /下部ボタン %> 138 </div> 139 <% end %> 140
rails
1# routes.rb 2Rails.application.routes.draw do 3 devise_for :users 4 root to: 'items#index' 5 resources :items , only: [:index, :new, :create, :delete, :edit] 6 7end 8
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/01/05 06:47
2022/01/05 06:51
2022/01/05 07:02