2020-12-01から1ヶ月間の記事一覧

掲示板のページネーション

kaminariのインストール 今回はページネーションをkaminari gemを使って実装する Gemfileに gem 'kaminari' を追記してbundle install —path vendor/bundle 今回の場合掲示板一覧画面とブックマーク一覧に1ページあたり20件の掲示板を表示するようにする …

コメント投稿、削除機能のajax化

コメント作成、削除処理のajax ・コメントの投稿フォームを処理をajax化するので、form_withをremote: trueにして、サーバーのログでjs形式で送信されているか確認 ちなみに、form_withはデフォルトでremote: trueなので明示的に記載しなくても良い #comment…

ブックマークボタンのajax化

ajaxとは 非同期通信と呼ばれる通信方法、通常、クライアントがリクエストを出したらサーバーからのレスポンスが返ってくるまで他の作業をすることができない同期通信と呼ばれる方法が用いられているが、クライアントからサーバーに対して、一部の情報だけを…

ブックマーク機能の追加

アソシエーション ユーザーは複数の掲示板をブックマークでき、掲示板は複数のユーザーにブックマークされるというようにモデル間で多対多の関係がある時、中間テーブル(今回の場合はブックマーク)を作成してモデル間の情報をやり取りする このテーブルによ…

掲示板の編集、削除機能の実装

掲示板編集ページの作成 フォーム部分はパーシャルを用意して、新規作成ページと共有できるようにしておく ので、今回編集ページのビューは以下のようになる #boards/edit.html.erb <div class="container"> <div class="row"> <div class="col-lg-8 offset-lg-2"> <h1><%= t('.title') %></h1> <%= render 'form', { board: @board } %> #掲示板</div></div></div>…

動的なタイトルの実装

例えば今回トップページのタイトルを「 RUNTEQ BORAD APP 」 ユーザーログインタイトルを「 ログイン | RUNTEQ BORAD APP 」 とする。このようにタイトルの一部分だけ変更して表示する機能は application_helper.rbに 以下のモジュールメソッドを用いて作成…

コメントのフォーム作成

前回のようにcommentリソースがboardsリソースにネストされている ルーティングの場合、コメント作成はfomr_wtihにboardモデルとcommentモデルと複数モデルを渡すことでフォームデータの送信先を指定できる 今回は、掲示板詳細画面にコメントのフォームをパ…

コメント機能の実装

掲示板にユーザーがコメントできるようにする Commentモデルの作成及びアソシエーションの確認 コメントは掲示板に属して、ユーザーに属するので、 bundle exec rails g model Comment body:text user:references board:references を実行、Userモデルは複数…