2010-12-20 86 views
3

我試圖生成一個XML文件。我有一些標記,重複數字,像這樣:HAML和迭代的XML

 
# necessary XML namespace and metadata stuff... 

%img{:src => "Foo002.jpg#full"}/ 
%img{:src => "Foo003.jpg#full"}/ 
%img{:src => "Foo004.jpg#full"}/ 
%img{:src => "Foo005.jpg#full"}/ 
# and so on for a few hundred lines 

%img{:src => "Foo435.jpg#full"}/ 

我給「富」和(在這種情況下435)結束號碼作爲參數。我如何去告訴HAML這樣做?

感謝

編輯:忘了提,前導零是很重要的。

+0

+1使用HAML! – 2010-12-21 00:13:49

回答

4
- 2.upto(435) do |n| 
    %img{:src => "Foo%03d.jpg#full" % n} 

- (2..435).each do |n| 
    %img{:src => "Foo%03d.jpg#full" % n} 

證明:

phrogz$ haml 
!!! XML 
%root 
    - 2.upto(10) do |n| 
    %img{ src:"Foo%03d.jpg" % n } 
^D 

<?xml version='1.0' encoding='utf-8' ?> 
<root> 
    <img src='Foo002.jpg' /> 
    <img src='Foo003.jpg' /> 
    <img src='Foo004.jpg' /> 
    <img src='Foo005.jpg' /> 
    <img src='Foo006.jpg' /> 
    <img src='Foo007.jpg' /> 
    <img src='Foo008.jpg' /> 
    <img src='Foo009.jpg' /> 
    <img src='Foo010.jpg' /> 
</root> 
+0

導致HAML在這裏:https://gist.github.com/748965 – Nate 2010-12-22 19:06:19