わからないこと
Railsのモデルにおいて、フォームから入力された値をcreateアクションで保存したいと考えています。
実現したいこと
url
には必ずhttps://www.youtube.com/watch?v=
という文字列を含むようにしたいです。含んでない場合はエラーメッセージを表示したいと考えています。しかし、以下の方法でモデルを作成し、フォームに「https://www.youtube.com/watch?v=1111111」のように入力すると、エラーがメッセージが「URLは一覧にありません」と出てしまいます。`validates :url, inclusion: { in: %w(https://www.youtube.com/watch?v=) }`等も試しましたが、結果が変わりませんでした。正規表現を組み込む必要があるのでしょうか。
詳細
class Post < ApplicationRecord belongs_to :user validates :user_id, presence: true validates :content, presence: true, length: { maximum: 18 } validates :gerne, presence: { message: "を指定してください" } validates :url, inclusion: { in: ["https://www.youtube.com/watch?v="] } end
情報
- Ruby 2.7.1
- Rails 6.0.2.2
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/03 09:53 編集