人生64日目
HAGIRE(9)
ほとんど全ての機能が完成した。
あと原因不明だったcontainerのmarginが解決した!(原因不明のまま)
ユーザー検索機能の実装
生のSQLをちょこッと書いた。
. . . #users controller def index @users = if params[:search] User.all.page(params[:page]).per(10).where("username LIKE ?", "%#{params[:search]}%") else User.all.page(params[:page]).per(10) end end
#index.html.erb . . . <%= form_with url: users_path, method: :get, local: true do |form| %> <%= form.text_field :search %> <%= form.submit "検索" %> <% end %>
フォームの入力内容をparams[:search]に保存してusers controllerのindexアクションに送信。
%は前方/後方一致を示すもので、%params[:search]%
とすることで入力内容を含むusernameを探すことができる。
kaminariを使ったページネートを利用しているので、.page~.per~がある。
正直、ユーザー検索機能そのものより、ユーザーを一覧で綺麗に表示する方がめんどくさかった・・・。(リファクタしてないのでコードは載せない)
明日には全てが完成する予定。ただのTwitterクローンになっちゃった。もっと綺麗に、早く、上手くできるようになりたい。
ただ、とにかく楽しい。