質問編集履歴

1

追記

2020/01/11 11:39

投稿

soft_admin
soft_admin

スコア63

test CHANGED
File without changes
test CHANGED
@@ -20,4 +20,38 @@
20
20
 
21
21
  この件にかかわらず、特定のカラムのみのバリデーションを回避するにはどうすればいいでしょうか?
22
22
 
23
- 具体的なソースがなくて申し訳ないですがよろしくお願いします。
23
+ ~~具体的なソースがなくて申し訳ないですがよろしくお願いします。~~
24
+
25
+ ソースです。(一部省略)
26
+
27
+ ```ruby
28
+
29
+ class User < ApplicationRecord
30
+
31
+ has_secure_password
32
+
33
+
34
+
35
+ validate :check_password
36
+
37
+
38
+
39
+ def check_password
40
+
41
+ if password.blank? || \
42
+
43
+ password.length > 50 || \
44
+
45
+ password.length < 8 || \
46
+
47
+ password !~ /\A(?=.*?[a-z])(?=.*?\d)[a-z\d]{8,50}+\z/i
48
+
49
+ errors.delete(:password)
50
+
51
+ errors.add(:password, I18n.t("validations.password.format"))
52
+
53
+ end
54
+
55
+ end
56
+
57
+ ```