0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

掲示板アプリに空の投稿を出来ないように制限をかける

Last updated at Posted at 2020-05-06

【開発環境】
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に記載します。

post.rb
class Post < ApplicationRecord
  validates :title, presence: true
  validates :content, presence: true
end

presenceは空のデータを保存することを防ぐことができます。

空の投稿をしようとしてもできなくなりました。
Image from Gyazo

#おわりに
今回はpresenceだけしか使っていませんが、チェック方法は他にもありますので、どんどん学んでいきたいと思います。
間違いなどございましたらご指摘いただければ幸いです。
最後まで読んでいただきありがとうございました。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?