2013-10-10 3 views
-1

콜렉션 (simple_form)으로 "보기"입력을했지만 그 콜렉션이 모델이어야합니다.ruby, simple_form 레일, 콜렉션

나는 [ "형제", "아버지", "친구", "남편", "어머니", "자매", "아들", "아내"]를 포함하는 변수를 선언해야합니다. 모델은 여기보기에 사용 : 내보기의

= f.input :relationship 

: 내 모델

class EmergencyInformation < ActiveRecord::Base 
    belongs_to :user 

    validates :user_id, :name, presence: true 

end 

도와의

= simple_form_for @emergency_information, html: {class: 'form-horizontal' } do |f| 
    = f.error_notification 
    = f.input :name 
    = f.input :relationship, collection: ["Brother", "Daughter", "Father", "Friend", "Husband", "Mother", "Sister", "Son", "Wife"] 

, 제발!

+2

나는이 질문을 이해하고 있는지 잘 모르겠다. 또는 하나라도 있다면. – sevenseacat

+0

질문을 편집했습니다. –

+0

'emergency_information' 테이블에'relationship'이라는 속성이 있습니까? – lurker

답변

1

정확하게 이해할 경우이 배열을 어디에 부착해야하는지 파악하는 것이 어렵습니다. 일반적으로 이러한 경우에는 모델을 상수로 추가하고 값을 나열하고 제출 된 값이 배열에서 나온 것인지 확인하는 데이 둘을 모두 사용합니다.

class EmergencyInformation < ActiveRecord::Base 
    RELATIONSHIPS_TYPES = ["Brother", "Daughter", "Father", "Friend", "Husband", "Mother", "Sister", "Son", "Wife"] 
    belongs_to :user 

    validates :user_id, :name, presence: true 
    validates :relationship, inclusion: RELATIONSHIPS_TYPES 
end 

# in view 
= f.input :relationship, collection: EmergencyInformation::RELATIONSHIPS_TYPES 

또는이 배열을 개별 서비스 개체에 추출 할 수 있지만이 경우에는 영어 이상의 느낌이납니다.

+0

TNX! 그게 다야! –

관련 문제