前提・実現したいこと
Ruby on rails で以下の記事を参考にしながら、検索機能を作っています。
検索したい単語を打つと、実際に検索機能として成り立つのですが、入力欄を未入力にした場合の「文字を打ってください」等のエラーメッセージの実装の仕方がわかりません。
コードや検証結果を以下のとおり記載していきますので、アドバイスいただけると幸いです。
https://qiita.com/yusuko/items/cff4e46aeafbc3beecf2
該当のソースコード
検索formの表示(search.html.erb)
<p>検索</p> <%= form_tag(search_path,:method => 'get') do %> <%= text_field_tag :search %> <%= submit_tag 'Search', :name => nil %> <% end %>
メイン処理(posts_controller.rb)
def search #Viewのformで取得したパラメータをモデルに渡す @posts = Post.search(params[:search]) end
searchメソッドの定義(post.rb)
def self.search(search) if search Post.where(['content LIKE ?', "%#{search}%"]) else Post.all end end
補足情報(FW/ツールのバージョンなど)
ruby 2.6.3
rails 6.0.3
上記の環境で実装を行なっています
あなたの回答
tips
プレビュー