2011-10-05 2 views
1

나는 ancestry 보석을 사용하고 있으며, 완벽하게 작동하는 보석을 얻기 위해 railscasts 에피소드 here을 따라 왔습니다.ancestry gem을 사용하여 큰 나무 구조의 라우팅 라인 구성

상당히 큰 조상 트리를 만들었지 만 부모와 자식은 들여 쓰기로 중첩되어 있지만 라우팅 선을 선호합니다. 아래 그림은 전체 트리의 작은 부분을 보여줍니다.

enter image description here

나는 구조 다음과 같이/또는 내가 행을 추가하여 구조 놀러 노력

enter image description here

비슷한 것을하고 싶은,하지만 난 그냥 보인다 연기로 끝나기.

각 부모 및 자식에게는 이와 같이 별도의 div 필드가 제공됩니다 (도우미에서). railscasts 에피소드처럼.

def nested_messages(messages) 
    messages.map do |message, sub_messages| 
    render(message) + content_tag(:div, nested_routes(sub_messages), :class => "nested_messages") 
    end.join.html_safe 
end 

가능하면 어떻게 할 수 있습니까? 어떤 힌트?

답변

2

div 및 css 트릭을 사용하여 줄을 만들려고하지 않습니다. 네비게이션 트리와 같은 UI 요소를 작성하려고합니다. jsTree와 같은 실제 UI 라이브러리로 모두 들어가십시오. 레일을 사용하여 데이터 구조를 만들고 (이미 완료 했음) 정적 HTML <ul> 목록을 렌더링합니다 (이 경우 요소를 나열하려면 <div>을 쉽게 변환해야합니다). 그런 다음 javascript가 해당 데이터 구조 (라인 등)의 뷰를 렌더링하게하면 상호 작용 및 기타 물건을 무료로 얻을 수 있습니다. http://www.jstree.com/

체크 아웃이 데모 : : :

여기에 주요 사이트의 페이지의 소스에서 http://www.jstree.com/documentation/core#demos

봐와 마법이 일어나는 시작 어디 <div id="demo2" ...>을 볼 수 있습니다.

JQuery와이 플러그인을 설치하는 것은 Rails 3 (3.1에서 이미 JQuery가 있음)에서 상당히 쉽습니다.

+0

주셔서 감사합니다. 나는 그것을 시험해보고, 내가 사용하고있는 조상 보석과 연결되어 있는지 살펴볼 것이다. 다른 사람이 아무것도 게시하고 싶어하는지 확인하기 위해 며칠 동안 질문을 남깁니다. – Hishalv

+0

덕분에, 그걸로 놀고 난 후에 나는 그걸 작동시킬 수있었습니다. 고마워요. – Hishalv