在Node + Express + EJS中使用Poet(https://github.com/jsantell/poet)(在How to use Poet with Node, Express and EJS template engine之后)并且一切正常。除了一件事之外......如何指定URL与屏幕显示的标题?
现在,我有以下目录:
./_posts/
hello.md
colors.md
shapes.md
...
hello.md
的内容是:
{{{
"title": "hello", // works, but fails if I change it to "Hello World!"
"tags": ["first", "try"],
"category": "javascript",
"date": "7-13-2014"
}}}
<p>Lorem ipsum dolor sit amet, dico dicta volumus pri cu ..</p>
我认为由于该文件标题为hello.md
,我将通过路由http://localhost:3000/post/hello
访问该文件。
这有效......但是当且仅当JSON指定{ "title":"hello", ...}
。
如果我将标题更改为{ "title":"hello-world", ...}
,则会在http://localhost:3000/hello-world
找到该帖子,这就是屏幕上显示的内容。如果我将其设置为“hello world”,那么我甚至无法使用%20
访问该网址。
在设置中我可能做错了什么?
参考网站似乎可以像预期的那样工作。例如,http://jsantell.com/post/browser-dance-party
由文件browser-dance-party.md指定,该文件指定了人类可读的标题。
{{{
"title" : "Browser Dance Party at HTML5 Dev Conf",
"tags" : ["speaking", "web audio", "dsp"],
"category" : "web audio",
"date" : "1-24-2014",
"description" : "Browser Dance Party talk at HTML5 Dev Conf"
}}}