チャットルーム管理機能④

どうもバンバンです。
今回はRailsでユーザー管理機能を実装する方法を復習を兼ねて 残していこうと思います。
ユーザ管理機能と一緒で全部書くと長くなるので何編かに分けて投稿していきます。
 
はじめに
今回はチャットルーム保存機能の実装になります。
復習中心になりますが大事な内容なので
丁寧に学習していきます
 
用語集
デバック
バグを見つけること
 
pry-rails
Railsにおけるデバック用のGem
binding.pryが使用できるようになる
 
binding.pry
ソースコードの中で記述するとbinding.pryが存在する箇所で
Railsの処理を一時停止しコンソールを起動できる
 
pry-railsの導入方法
①gem 'pry-rails'をgemfileに追記
②ターミナルでbundle install
③ローカルサーバー再起動
 
手順
 
配列の保存を許可
ストロングパラメーターを設定
def create
createアクションを定義 保存
@room = Room.new(room_params)
インスタンス変数に取得したストロングパラメーターを生成し代入
if @room.save
もし保存に成功したら
redirect_to root_path
新しいデータを取得したままトップページへ遷移
else
成功できなかったら
render :new
new.html.erbへデータを取得せず遷移
end
end
 
 
private
 
 
 
def room_params
↑引数
params.require(:room).permit(:name, user_ids: )
ストロングパラメーターを定義 ↑配列
require(:モデル名).permit(キー)
end
注意点:必ず保存の成功・失敗による条件分岐が必要になる
 
バリデーションの設定
validates :name, presence:trueを対応モデルに記載
これによりルーム名が空のときは作成できないように設定
 
おわりに
ストロングパラメーターはかなりの頻度で出てくるので
しっかりと理解していきたい内容になります。出題頻度の高い文言は覚えてしまえば学習効率がよくなるかもしれないですね。