前提・実現したいこと
ここに質問の内容を詳しく書いてください。
Ruby on Railsでバリデーション の実装をしたいです。
空で送信した時にエラーメッセージが表示したく、色々い調べましたが
実装出来ず・・・
お力添えくださいませ。
発生している問題・エラーメッセージ
NoMethodError in Books#index
Ruby on Rail
ソースコード
ruby
1~book_rb~ 2 3class Book < ApplicationRecord 4 5 validates :title, presence: true 6 validates :body, presence: true 7end
ruby
1~books_conttrole.rb~ 2 3def create 4 book = Book.new(book_params) 5 if book.save 6 redirect_to book_path(book.id) 7 else 8 render :index 9 end 10 end
ruby
1~index_html_erb~ 2 3<% if @book.errors.any? %> 4 <ul> 5 <% @book.errors.full_messages.each do |message| %> 6 <li><%= message %></li> 7 <% end %> 8 </ul> 9<% end %>
試したこと
恐らくindex_html_erbが違っているのかと勝手に予想してます・・・。
@bookのところをbookにしてみたり
ネットで調べて色々な方法試しましかが・・・
お力添えいただけると幸いです。
補足情報(FW/ツールのバージョンなど)
Rails 5.2.4.4
回答1件
あなたの回答
tips
プレビュー