그림 앨범 용 index.xml.builder 파일에 문제가 있습니다. 나는 그것이 단순한 무언가다고 확신하지만 Builder :: XmlMarkup 문서에서 해결책을 찾지 못한 후 나를 미치게 만들었다.레일 3 - XML 빌더
xml.instruct!
xml.gallery {
@albums.each { |g|
xml.album(g.name, {:title => g.name,
:description => g.description,
:lgpath => "[PATH]",
:tnpath => "[PATH]",
:fspath => "[PATH]"})
g.pictures.each { |p|
xml.img nil, :src => "#{p.resource_file_name}"
}
}
}
그러나, 이것은 다음과 같은 생산 : 당신이 볼 수 있듯이
<gallery>
<album title="..." description="..." lgpath="..." tnpath="..." fspath="..."></album>
<img src="17112.jpg"/>
<img src="17113.jpg"/>
<img src="17114.jpg"/>
<img src="17115.jpg"/>
<album...
, 내가 </album>
태그 내에 중첩 된 이미지를 얻을 수 없습니다 나는 여기에 내 현재도이다. 그 아이디어를 얻으려면 어떻게해야할까요?
미리 감사드립니다.
WRAP-UP (덕분에 옳은 길을 저를 퍼 팅에 대 한 이안합니다) :
이 경우 빌더 :: XmlBase 번호의 method_missing에서, 소스 코드를 읽는 과소 평가하지 마십시오. 솔루션은 태그 내용 (g.name)의 문자열을 전달하지 않는 것입니다. 이것은 내가 필요로하는 코드입니다 :
xml.instruct!
xml.gallery do
@albums.each do |g|
xml.album(:title => g.name) do
g.pictures.each do |p|
xml.img(:src => p.resource_file_name)
end
end
end
end
도움 주셔서 감사합니다. 당신은 앨범 태그를 놓친 것이 맞습니다. 사실, 이미지를 중첩 시키길 원합니다. 갤러리 블록의 범위 내에서 g.pictures를 호출하기 때문에 내 방식의 오류를 발견 할 수 없습니다. 내 실수는 어리 석고 어리 석다는 것이 확실하므로 계속 연결해 보겠습니다 ... – TMB
앨범 블록 안에 g.pictures를 호출하면 준비가 완료됩니다. 앨범의 이름을 태그 또는 속성으로 만들 수도 있습니다. – iain