0
컨텍스트 : 첨부 된 아바타가있는 사용자 모델이 있습니다 (클립 클립을 통해). 사용자가 생성 될 때 아바타는 필요하지 않지만 사용자가 자신의 아바타를 프로파일에 업데이트 할 때 아바타를 필요로합니다. 사용자가 새 아바타를 업로드하면 아약스 만 아약스 요청을 통해 제출됩니다. file_field가 비어 있으면이 시점에서 유효성 검사 오류를 반환하고 싶습니다.단일 속성 업데이트에만 존재 여부 확인 추가
은 우선은 내가
validates_attachment_presence :avatar, message: "The file is missing", :if => ->{ !new_record? }
을 사용하지만 예상대로 정확하게 작동하지 않고 내 검증 테스트 스위트가 정상
should be_valid
describe User do
before do
@user = FactoryGirl.create :user
end
subject { @user }
[...]
it { should be_valid }
end
에 실패 할 수 있습니다.
어떻게 처리해야합니까? 내가 생각해 낸 유일한 아이디어는 파일 필드가 비어 있지만 해킹하는 것처럼 보이면 @user.errors
에서 UserController # update의 새로운 오류를 삽입하는 것입니다.
감사합니다.
나는이 구문을 모르는, 나는'사용 => update' 대신 (@Kulbir가에 : 예, 그의 대답을 알하지 않고 다윗 '1 게시, 나는 내 대답을 삭제) – citraL
@citraL David가 사용한 것은 새로운 루비 해시 구문입니다. 이 [간단한 예제] (http://www.gaurishsharma.com/2012/04/new-ruby-1-9-hash-syntax.html)를 확인하십시오. –
오프너가 메시지를 사용 중입니다 : "파일이 없습니다"라는 새로운 구문이므로 update 옵션에도 새로운 구문을 사용했습니다. –