2011-12-16 3 views
0

저는 Ruby에 익숙하지 않아 루비의 "메타 프로그래밍"기능이라고 확신합니다. ActiveRecord :: Base는 인스턴스 vars를 어떻게 동적으로 생성합니까? 사실, 루비 클래스는 런타임에 인스턴스 변수를 어떻게 생성합니까?ActiveRecord :: Base는 어떻게 인스턴스 바를 동적으로 생성합니까?

죄송합니다. 이것이 멍청한 질문 인 경우, 방금 루비를 시작했습니다.

답변

1

활성 레코드 개체는 특성과 변수를 직접 지정하지 않고 데이터베이스에서 링크 된 테이블 정의에서이를 추론합니다.

속성 및 유형을 추가, 제거 및 변경하는 작업은 데이터베이스에서 직접 수행됩니다.

모든 변경 사항은 활성 레코드 개체에 즉시 반영됩니다. 주어진 Active Record 클래스를 특정 데이터베이스 테이블에 바인딩하는 매핑은 일반적인 경우에 자동으로 발생하지만 일반적이지 않은 경우에는 덮어 쓸 수 있습니다.

액티브 레코드 추가 정보 here

관련 문제