2009-09-13 4 views
0

레일 콘솔을 통해 ActiveRecord를 확인할 수 있지만 전체 출력을 한 줄로 표시한다는 것을 알고 있습니다. 테이블에 열 수가 많은 경우 특정 속성을 조회하는 데 문제가 될 수 있습니다.레일즈에서 ActiveRecord의 속성을 쉽게 체크 아웃 할 수 있습니까?

>> Story 
=> Story(id: integer, name: string, link: string, created_at: datetime, updated_at: datetime) 

나는 속성이 생성 마이그레이션 파일에 표시되는 방법을 좋아하지만 나는 많은 마이그레이션 파일이있는 경우, 내가 원하는 일을 추적하기 위해 조금 어려울 수 있습니다.

Django에서 직접 models.py로 가서 원하는 모델의 속성을 확인할 수 있습니다. Rails 개발자는 어떻게 이런 종류의 검색을합니까?

답변

3

config/schema.rb에는 db 스키마가 있으며, 즉 모든 속성이 있습니다. 방금 파일을 열고 Post 모델에 대해 "posts"를 검색합니다.

0

나는 보통 데이터베이스 쉘의 테이블을 설명합니다.

2

또 다른 방법은 annotate_models 플러그인/gem을 사용하는 것입니다. 모델 파일의 맨 위에 주석이 추가됩니다.

합니다 (README에서) 예 : (프로젝트 루트에서 rails/console)

Schema as of Sun Feb 26 21:58:32 CST 2006 (schema version 7) 
    # 
    # id     :integer(11) not null 
    # quantity   :integer(11) 
    # product_id   :integer(11) 
    # unit_price   :float   
    # order_id   :integer(11) 
    # 
0
레일 콘솔에서

Story.columns_hash.each {|k,v| puts "#{k} => #{v.type}"} 

출력 :

id => integer 
name => string 
link => string 
... 
etc 
관련 문제