current_user_idが渡らなくて困っています
どのUserのOrderかが分かるようにしたいのですが、user_idがnilとなってしまいます。
モデルのリレーションは済みです。
ざっくり
userモデル
orderモデル
orderコントローラー
発生している問題・エラーメッセージ
form
1<%= form_for @order, url: orders_path do |f| %> 2 3 <p> 4 <%= f.text_field :quantity, placeholder: '数を入力してください' %> 5 <% if @order.errors.messages:quantity].any? %> 6 <span class="error"><%= @order.errors.messages[:quantity][0] %></span> 7 <% end %> 8 </p> 9 <p> 10 <%= f.hidden_field :user_id, value:current_user.id %> 11 </p> 12 <%= f.check_box :agreement, :as => :boolean, checked:false %> 13 <a href="http://localhost:3000/pages/policy">利用規約に同意する</a> 14 15 <p> 16 <%= f.submit '注文する', class: 'submit_button' %> 17 </p> 18 </div> 19 <% end %>
controller
1def create 2 @user = current_user 3 @tpoint = @user.point 4@order = Order.new(order_params) 5 if @order.save && @tpoint >= @order.price 6 order 7 else 8 redirect_to charges_path 9 end 10 end
試したこと
①<%= f.hidden_field :user_id, value:current_user.id %>
をフォームに入れることで、渡せるのかなと思いましたが失敗。
②コントローラーに書くやり方も試しましたが、なるべくform_forの中で完結させたいなと思っています
どなたかご教授願えませんでしょうか?よろしくお願いいたします
補足情報(FW/ツールのバージョンなど)
Ruby on Rails5
HTML5
CSS3
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/09/03 17:11