2011-09-08 2 views
1

데이터베이스의 테이블에서 문자열을 읽으려고하고 아코디언 패널의 패널에서 제목으로 사용하려고합니다. 간단히 말해 아코디언 내부의 패널 수가 동적으로 변경 될 수 있습니다.Netzke/ExtJS 4 - 아코디언 패널 내에서 동적 패널 수를 구현하는 방법

여기 내가 시도한 것의 요지 - https://gist.github.com/1199695입니다. Ruby 클래스의 끝점을 사용하여 테이블에서 이름을 가져옵니다. 반환 된 데이터에는 아코디언 안에 Panel을 추가하기 위해 호출되는 클라이언트 JS 함수 (addPanel)의 문자열이 포함됩니다.

코드는 예상대로 실행되지만 아코디언 내부의 패널은 표시되지 않습니다.

내 생각에 항목이 아코디언에 들어가기 전에 렌더링이 진행되는 것입니다.

initComponent 안에 class_name.items.add (새로운 Ext.panel.Panel ({: title "My panel"})))를 추가하면 하드 코드에 "My panel"이라는 제목의 패널이 보입니다. 아코디언.

문제를 해결하는 올바른 방법인지 알려주십시오.

감사합니다.

답변

0

아코디언 창이 Netzke 구성 요소가 필요합니까? 방금 (모델에서 가져온) 동적 항목을 구성하여 Ext.tab.Panel 기반 클래스를 제공

def configuration #:nodoc: 
    super.merge({ 
     # ... 

     :items => some_model.all.map{|item| {:item => item.title}} 
    }) 
    end 

간단히 : 그렇지 않으면, 당신은 뭔가를 시도 할 수 있습니다.

+0

감사합니다. 그게 효과가! – CadJunkie