1
ryan bates railscasts의 도우미 메서드를 ancestry에 사용하여 중첩 된 메시지를 표시합니다 (아래 코드는 완벽하게 작동 함).div에서 정렬되지 않은 목록으로 중첩 된 메시지 도우미 변경
def nested_messages(messages)
messages.map do |message, sub_messages|
render(message) + content_tag(:div, nested_messages(sub_messages), :class => "nested_messages")
end.join.html_safe
end
위의 코드 비트는 구조와 같은 트리에서 개별 div를 중첩합니다.
내가 그렇게 내가 무슨 짓을하는 것은 이것이다, 정렬되지 않은 목록에이를하고 싶습니다 :
def nested_messages(messages)
messages.map do |message, sub_messages|
content_tag(:ul, :class => "") do
render(message)
content_tag(:li, :class => "nested_messages") do
nested_messages(sub_messages)
end
end
end.join.html_safe
end
생성 된 HTML 잘 보이는, 그러나 목록 항목에는 값을 포함하지 않습니다. 내가 뭐 잘못하고 있니?
UPDATE
내가 같이하기 위해 생성 된 HTML을 좋아하는 것 : 데이브에, 덕분에 나는이 그것을 변경하고 작동이
<ul>
<li>Main Message</li> <!-- first message -->
<li>
<b>Message 1</b>
<ul>
<li>Message 1 subchild 1</li>
<li>Message 1 subchild 2</li>
</ul>
</li>
</ul>
UPDATE :
def nested_messages(messages)
messages.map do |message, sub_messages|
#render(message) + content_tag(:div, sub_messages, :class => "nested_messages")
content_tag(:ul, :class => "") do
content_tag(:li, :class => "nested_messages") do
render(message) + nested_messages(sub_messages)
end
end
end.join.html_safe
end