0

내 응용 프로그램에서 js 유효성 검사를 수행하기 위해 client_side_validation gem을 사용하고 있습니다. simple_form 버전을 사용하고 있습니다.client_side_validation gem - 부울 값 확인란으로

나는 그들이 1 또는 0 중 하나의 값이 체크 박스로 렌더링 뷰 그러나

class Permission < ActiveRecord::Base 
    validates :local, :regional, :national, :inclusion => {:in => [true, false]} 
end 

을 검증하는 내 허락 모델의 부울 속성을 가지고, 그래서 그들은로 표시되지 않습니다 검증 됨.

아이디어가 있으십니까?

답변

0

체크 박스는 :validate => false으로 설정해야합니다. 예 :

<%= simple_form_for @permission, :validate => true do |f| %> 
    <%= f.input :name, :label => 'Name' %> 
    <%= f.label :local %> 
    <%= f.check_box :local, :validate => false %> 
    <%= f.label :national %> 
    <%= f.check_box :regional, :validate => false %> 
    <%= f.label :regional %> 
    <%= f.check_box :national, :validate => false %> 
    <%= f.button :submit %> 
<% end %> 

확인란의 정의는 true 또는 false로, 클라이언트 측 유효성 검사는 실제로 필요하지 않습니다. 서버 측 유효성 검사를 사용하면 부울 값이 아닌 값을 악의적으로 제출하려는 사람으로부터 여전히 보호받을 수 있습니다.

+0

감사합니다. 그게 내가 한 일이었습니다. – Edward