【학습 출력 3】 has_secure_password와 validates :password, presence: true의 차이
1355 단어 루비RailsValidation
배경
has_secure_password를 설정한 User 모델
user.rbclass User < ApplicationRecord
has_secure_password
그러나 다음 테스트
user_controller_test.rbtest "password should be exist when create" do
@user.password = " "
assert_not @user.valid?
end
에 걸려 버리는 문제에 고민하고 있었습니다.
(has_secure_password가 공백에 유효성이 있다고 생각했기 때문에 htps : // 코 m / 짱짱 - Y / ms / 19 에아 23b81f3421063fc5)
validates :password, presence: true를 붙이면 테스트를 통과합니다.
그럼, has_secure_password의 디폴트 validation과는 일체...
결론
Rails 4.2부터 다음과 같이 변경되었습니다.
has_secure_password 는 기본적으로 빈 암호를 허용합니다(예: 빈 공간 전용 암호). h tps : // / ls lgus s. jp / 4_2_repease_의 s. HTML
공백을 허가하고 싶지 않은 경우는 별도 validates :password, presence: true
등의 추가가 필요합니다.
Reference
이 문제에 관하여(【학습 출력 3】 has_secure_password와 validates :password, presence: true의 차이), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/tktk0430/items/04443e172e633842e221
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
class User < ApplicationRecord
has_secure_password
test "password should be exist when create" do
@user.password = " "
assert_not @user.valid?
end
Rails 4.2부터 다음과 같이 변경되었습니다.
has_secure_password 는 기본적으로 빈 암호를 허용합니다(예: 빈 공간 전용 암호). h tps : // / ls lgus s. jp / 4_2_repease_의 s. HTML
공백을 허가하고 싶지 않은 경우는 별도
validates :password, presence: true
등의 추가가 필요합니다.
Reference
이 문제에 관하여(【학습 출력 3】 has_secure_password와 validates :password, presence: true의 차이), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/tktk0430/items/04443e172e633842e221텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)