2012-06-14 3 views
2

레일 3.1에서는 객체의 속성 수를 어떻게 계산합니까?레일 개수 속성 개수

예를 들어 Projects라는 개체가 있고 속성 (열)이 몇 개인 지 알고 싶습니다. 여기

답변

6

당신은 이동 :

Project.columns.size 

Docs here.

+0

'Project.columns'가 열 객체를 인스턴스화해야하기 때문에'Project.column_names.size'를 사용하는 것이 약간 더 효과적 일 수 있습니다. –

+2

나는 동의하지 않는다. 실제로는 그렇게 적습니다. [column_names의 작동 방식] (https://github.com/rails/rails/blob/36d7af34d6e878a4557ba8a2c282609da2f646ba/activerecord/lib/active_record/model_schema.rb#L247)을 살펴보십시오. 그것은 단지'columns'의 맨 위에 map 함수를 실행하기 때문에'Project.columns.map (& : name) .size'와 거의 같습니다. –

+0

아, 나는 고쳐 쓴다. –