首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用basepath过滤器重写Webby中的URL?

使用basepath过滤器重写Webby中的URL?
EN

Stack Overflow用户
提问于 2009-02-25 16:16:51
回答 2查看 457关注 0票数 0

Basepath过滤器重写?

我正在尝试使用webby中的basepath过滤器来重写我项目中的所有URL。

关于这一点,basepath滤波器 for 韦比上的文档有点“轻描淡写”,只是没有足够的文档来理解如何使用它。

但是,如果我找到了这方面的解决方案,那么我计划为项目提供一些文档。

我还理解,为了使这个操作有效,我应该有我所有的路径,以便它重写的URL从"/“开始。

我试过像这样把过滤器应用到我的default.txt模板中.

代码语言:javascript
复制
---
extension: html
filter:    erb
       basepath
---

** -布局顶端/Default.txt**

然后我运行命令:

代码语言:javascript
复制
leeand00@someHost: webby rebuild BASE='http://www.yahoo.com/bob/'

** -从项目的根目录运行命令**

但我得到的只是一个错误..。

代码语言:javascript
复制
** Invoke rebuild (first_time)
** Invoke configure_basepath (first_time)
** Execute configure_basepath
** Execute rebuild
webby aborted!
syntax error on line 4, col 0: `---'
/usr/lib/ruby/1.8/yaml.rb:133:in `load'
/usr/lib/ruby/1.8/yaml.rb:133:in `load'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/resources/meta_file.rb:164:in `meta_data'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/resources/meta_file.rb:51:in `meta_data'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/resources/meta_file.rb:51:in `open'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/resources/meta_file.rb:51:in `meta_data'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/resources/layout.rb:19:in `initialize'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/resources.rb:41:in `new'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/resources.rb:41:in `new'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/builder.rb:167:in `load_files'
/usr/lib/ruby/1.8/find.rb:39:in `find'
/usr/lib/ruby/1.8/find.rb:38:in `catch'
/usr/lib/ruby/1.8/find.rb:38:in `find'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/builder.rb:164:in `load_files'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/builder.rb:134:in `run'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/builder.rb:23:in `run'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/tasks/build.rake:13
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:615:in `call'
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:615:in `execute'
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:612:in `each'
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:612:in `execute'
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:578:in `invoke_with_call_chain'
/usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:571:in `invoke_with_call_chain'
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:564:in `invoke'
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:2019:in `invoke_task'
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:1997:in `top_level'
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:1997:in `each'
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:1997:in `top_level'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/apps/main.rb:232:in `standard_exception_handling'
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:1991:in `top_level'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/apps/main.rb:115:in `rake'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/apps/main.rb:33:in `run'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/apps/main.rb:12:in `run'
/var/lib/gems/1.8/gems/webby-0.9.3/bin/webby:39
/var/lib/gems/1.8/bin/webby:19:in `load'
/var/lib/gems/1.8/bin/webby:19
leeand00@U101:~/J62$ webby --trace rebuild BASE='http://www.yahoo.com/bob/'
** Invoke rebuild (first_time)
** Invoke configure_basepath (first_time)
** Execute configure_basepath
** Execute rebuild
webby aborted!
syntax error on line 4, col 0: `---'
/usr/lib/ruby/1.8/yaml.rb:133:in `load'
/usr/lib/ruby/1.8/yaml.rb:133:in `load'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/resources/meta_file.rb:164:in `meta_data'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/resources/meta_file.rb:51:in `meta_data'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/resources/meta_file.rb:51:in `open'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/resources/meta_file.rb:51:in `meta_data'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/resources/layout.rb:19:in `initialize'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/resources.rb:41:in `new'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/resources.rb:41:in `new'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/builder.rb:167:in `load_files'
/usr/lib/ruby/1.8/find.rb:39:in `find'
/usr/lib/ruby/1.8/find.rb:38:in `catch'
/usr/lib/ruby/1.8/find.rb:38:in `find'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/builder.rb:164:in `load_files'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/builder.rb:134:in `run'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/builder.rb:23:in `run'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/tasks/build.rake:13
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:615:in `call'
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:615:in `execute'
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:612:in `each'
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:612:in `execute'
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:578:in `invoke_with_call_chain'
/usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:571:in `invoke_with_call_chain'
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:564:in `invoke'
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:2019:in `invoke_task'
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:1997:in `top_level'
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:1997:in `each'
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:1997:in `top_level'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/apps/main.rb:232:in `standard_exception_handling'
/var/lib/gems/1.8/gems/rake-0.8.3/lib/rake.rb:1991:in `top_level'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/apps/main.rb:115:in `rake'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/apps/main.rb:33:in `run'
/var/lib/gems/1.8/gems/webby-0.9.3/lib/webby/apps/main.rb:12:in `run'
/var/lib/gems/1.8/gems/webby-0.9.3/bin/webby:39
/var/lib/gems/1.8/bin/webby:19:in `load'
/var/lib/gems/1.8/bin/webby:19
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-02-25 18:22:09

尝试更改筛选器部分,使其使用有效的webby语法。它应该是这样的:

代码语言:javascript
复制
---
extension: html
filter:
  - erb
  - basepath
---
票数 1
EN

Stack Overflow用户

发布于 2009-04-03 18:19:50

我确认答案是正确的。我想解释一下为什么,这是因为页面的元数据在yaml ( http://en.wikipedia.org/wiki/YAML#Lists )中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/586703

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档