Railsで作成しているアプリで、ユーザーに対する一言コメントのフォームを実装しました。その一言コメントは任意で使用可能としています。つまり、コメントは空欄でも問題ありません。
ただし、一言コメントを使用する場合は50文字以上70文字以下のバリデーションを付けることを考えています。(理由は作成しているアプリの内容の関係です。この質問とは無関係になりそうなので割愛します。)
そこで、バリデーションの設定の方法を教えていただきたいです。
設定したいバリデーションは、**『0文字でも可、ただし、もし使用する場合は50文字以上70文字以下の文字』**であること。
【環境】
Rails 5.1.7
下記は試しました。ただし、下記は50文字以上70文字以下の文字を設定できますが、0文字でも可というバリデーションは付帯されていません。if を含んだバリデーションの方法を調べましたが、イマイチ上手くいかないです。どなたか教えていただけないでしょうか。
(バリデーションに設定したい属性は、comment にしています。)
validates :comment, length: { in: 50..70 }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/06/10 03:31