【開発環境】
macOS Catalina
バージョン 10.15.3
ruby 2.5.1
Rails 5.2.4.2
visual studio code
勉強用に掲示板アプリを作成したので、その際に行ったバリデーションを記載します。
#バリデーションを設定し、空の投稿を制限しよう
掲示板アプリなどで空の投稿が出来てしまうというのは望ましくありません。
それを防ぐためにバリデーションを設定する必要があります。
##バリデーションとは?
バリデーション(validate)とは、データをDBに保存する前に無効なデータが保存されないように制限する機能のことです。
バリデーションの基本的な書き方です。
validates :カラム名(シンボルで指定),チェックの方法
##投稿機能にバリデーションを設定する
今回作成した掲示板アプリの投稿(post)のカラムはタイトル(title)と内容(content)です。
この二つのカラムが空の場合投稿できないようにバリデーションを設定します。
バリデーションはデータをDBに保存する前に行うので、モデルに記載する必要があります。
今回は投稿機能へ行うので、post.rbに記載します。
class Post < ApplicationRecord
validates :title, presence: true
validates :content, presence: true
end
presenceは空のデータを保存することを防ぐことができます。
#おわりに
今回はpresenceだけしか使っていませんが、チェック方法は他にもありますので、どんどん学んでいきたいと思います。
間違いなどございましたらご指摘いただければ幸いです。
最後まで読んでいただきありがとうございました。