1
나는이 같은 여러 가지 방법을 가지고있는 클래스 Foo
button_0_0
, button_0_1
, button_0_2
, button_1_0
등 나는 다음과 같은 구문을 통해 다른 방법이 액세스 할 수 있도록하고 싶습니다배열 인덱스로 접근자를 교대로 액세스하는 방법은 무엇입니까?
: 내가 아는
foo.button[0][1]
foo.button[1][2]
# etc.
나는 단지 @button
인스턴스 변수를 생성하고 모든 button_*
접근자를 반복하고 그런 식으로 추가 할 수 있습니다. 그러나 이는 다소 괴롭 히고 실제로 "루비 방법"을 따르지 않습니다.
이 문제에 대한 좀 더 간결하고 루비쉬 한 해결책이 있는지 궁금합니다 (아마도 method_missing
을 사용하여)? 누구든지이 작업을 수행하는 더 좋은 방법을 알고 있습니까?
대신 클래스 푸에'method_missing'를 사용하는 (... 나는 도중에이 알아 냈어요,하지만
[]
누락 된 방법에 대한 새로운 방법을 호출하기 때문에 나는 대괄호에 박히) , 그냥 할 수 없어 def 버튼 돌아 가기 Button.new (자기) 끝 ? –예, 저는 method_missing이 필요 없습니다. 나는 당신의 제안으로 코드를 업데이트했다. 감사. –