2014-06-12 22 views
0

我遇到了docpad问题。我想从子目录中获取所有页面。从subdir获取所有页面,实际上是dir

我发现这个职位:

How to get collections from sub-folder in docpad?

docpad subdirectory rendered into general directory

,但它不为我工作。

我的树结构:

  • 文件
    • 地方
      • PLACE1
        • 第1页
      • place2
        • 第2页
      • 等...

我的代码 - 得到PLACE1和place2所有页面( )

<ul class="list-group"> 
<% for add in @getFilesAtPath("places").findAll().toJSON(): %> 
    <li class="list-group-item"> 
     <a href="<%= add.url %>"> 
      <%= add.title %> 
     </a> 
    </li> 
<% end %> 
</ul> 

我的代码 - 不从地方可以买到页/ PLACE1 - 为空

<ul class="list-group"> 
<% for add in @getFilesAtPath("places/place1").findAll().toJSON(): %> 
    <li class="list-group-item"> 
     <a href="<%= add.url %>"> 
      <%= add.title %> 
     </a> 
    </li> 
<% end %> 
</ul> 

我的目标是,当IM在PLACE1 /家,我想可显示所有网页实际上是dir(place1)。当我在place2/home上显示来自place2的所有页面时。

如何做到这一点?

回答

0

正如您在其中一个参考问题How to get collections from sub-folder in docpad中的答案中指出的那样,路径是系统“依赖”。

我在Windows上运行Docpad并测试以下内容,它可以工作。

<ul class="list-group"> 
    <% for add in @getFilesAtPath("places\\place1").findAll().toJSON(): %> 
    <li class="list-group-item"> 
     <a href="<%= add.url %>"> 
     <%= add.title %> 
     </a> 
    </li> 
    <% end %> 
</ul> 

使溶液系统无关的,你可以...

添加一个正常化的路径分隔符的辅助工具。

normalizePathSeparator: (unixPath) -> unixPath.replace('/', path.sep) 

使用这样的:

<ul class="list-group"> 
    <% for add in @getFilesAtPath(@normalizePathSeparator("places/place1")).findAll().toJSON(): %> 
    <li class="list-group-item"> 
     <a href="<%= add.url %>"> 
     <%= add.title %> 
     </a> 
    </li> 
    <% end %> 
</ul> 

PS:你需要要求path模块在​​文件。

相关问题