RailsでURLのバリデーションを行う方法を紹介します。

環境
ruby 2.6.6
Rails 6.0.3

validates_url というgemを使います。

早速gemを追加します。

gem 'validate_url' # urlのバリデート用

次にgemをインストールします。

ターミナル

bundle install

※サーバー起動中の場合は、bundle install後に再起動することでgemが反映されます。

対象のモデルに下記の記述を加えます。

class **** < ApplicationRecord
  #省略
  validates :カラム名, url: { allow_blank: true }
 #省略
end

以上でバリデーション処理完了です。
このgemを使用すると、https:// もしくは http:// から始まる文字列のみ登録できるようになります。