Q&A
ActionController::UrlGenerationError in BooksController#create
No route matches {:action=>"show", :controller=>"books", :id=>nil}, missing required keys: [:id]
上のようなエラーが出てしまっています。
html
1<h2>New book</h2> 2 3 <%= form_for(@book) do |f|%> 4 <div class="field"> 5 <%= f.label :title %><br /> 6 <%= f.text_field :title %> 7 </div> 8 9 <div class="field"> 10 <%= f.label :body %><br /> 11 <%= f.text_area :body %> 12 </div> 13 14 <%= f.submit "Create Book",class: "btn btn-primary btn-lg" %> 15 <%end%>
controller
1class BooksController < ApplicationController 2 3 def new 4 @book = Book.new 5 end 6 7 def create 8 @book = Book.new(book_params) 9 @book.save 10 redirect_to book_path(@book.id) 11 end 12 13 def show 14 @book = Book.find(params[:id]) 15 end 16 17 18 private 19 20 def book_params 21 params.require(:books).permit(:title,:body) 22 end 23end 24
試したこと
routesがあるのかrails routesで確かめた。
足りない情報などありましたら教えていただきたいです。
どうかご教授よろしくお願いいたします????♂️
回答1件
あなたの回答
tips
プレビュー
下記のような回答は推奨されていません。
このような回答には修正を依頼しましょう。
2019/06/30 11:15