2016-10-24 2 views
0

내 레일 패키지에 5 개의 필드가 food_desc_one, food_desc_two 등과 같이 내 Student의 테이블에 최대 5 개 있습니다. null 인 값을 검사하기 위해 반복하는 Student 컨트롤러에 메소드를 작성하고 있습니다. 나는 for 루프와 함께있을 것이다 그것을 할 수있는 최선의 방법을 생각했다, 그래서 나는 다음과 같은 한 : in_words는 앞에서 정의한 헬퍼 방법입니다for 루프에서 변수 이름을 바꿔 놓은 레일

for i in 0..5 
    if student.food_desc_"#{in_words(i)}" != '' 
    . . . 
    end 
end 

. 그러나, 나는 변수의 끝 부분에 숫자를 추가하려고하기 때문에 내가 생각하는 undefined method 'food_desc_' for #<Student:0x0000000b2e75d8>을 얻습니다.이 작업을 수행하는 다른 방법이 있습니까? 아니면 각 필드를 개별적으로 확인해야합니까? 모든 도움을 주시면 감사하겠습니다!

답변

0

시도 :

student.send("food_desc_#{in_words(i)}") 
+0

이 작동, 감사합니다! –

관련 문제