모델 데이타의 검증

IT(Old)/RubyOnRails 2008. 1. 21. 16:50
1. validates_acceptance_of(attribute, :message => "message", :accept => "1")
     => 필드가 HTML폼의 체크박스가 선택되어 있음을 검증
2. validates_associated(object)
3. validates_confirmation_of(attribute, :message => "message")
     => HTML 폼에서 사용자의 실수를 방지하기 위해서 필드값을 중복하여 입력받을 때,
         두 필드의 값이 일치함을 검증
4. validates_each attribute do |record, attr|
      record.errors.add attr, "error_message" if condition
   end
5. validates_exclusion_of(attribute, :in => enumerable_object, :message => "message")
     => 필드값이 지정된 배열 또는 구간의 원소중 하나가 아닐 것을 검증
6. validates_format_of(attribute, :with => /regular_expression/, :message => "message")
     => 필드값의 문자열이 지정된 정규식 패턴과 일치하는지를 검증
7. validates_inclusion_of(attribute, :in => enumerable_object, :message => "message")
     => 필드값이 지정된 배열 또는 구간의 원소중 하나임을 검증
8. validates_length_of(attribute, :maximum => max, :message => "message")
     => 필드값의 문자열 길이가 지정된 범위 내에 있음을 검증
9. validates_numericality_of(value, :message => "message")
     => 필드값이 숫자임을 검증
10. validates_presence_of(attributes, :message => "message")
     => 필드에 값이 지정되지 않았거나, 필드값이 빈 문자열인 경우 에러
11. validates_size_of(attribute, :maximum => max, :message => "message")
12. validates_uniqueness_of(attributes, :message => "message")
     => 필드값이 테이블의 다른 레코드와 중복되지 않음을 검증

 

Model 명명규칙 관례를 따르지 않을 경우

IT(Old)/RubyOnRails-Tip 2008. 1. 21. 15:32

User < ActiveREcord:Base
  set_table_name "user_tbl"
end

와 같이 강제로 table을 지정해 주어야 된다.


TIP : User  모델 클래스는 레일스 애플리케이션이 처음 구동될 때, 데이터베이스에 연결하여 users테이블의
필드 목록을 읽어들이게 된다. users 테이블의 필드 목록을 확인한 User 모델 클래스는 각 필드에 해당하는 접근자 메소드를 동적으로 정의하여 추가한다. 데이터 베이스 테이블의 필드를 확인하고 이에 해당하는 접근자
메소드를 동적으로 추가하는 User 모델 클래스의 기능으 ActiveRecord::Base클래스로 부터 상속되고 있다.