nodejs 如何做基于内容的url?


简而言之,如何将


 /topic/54352f0b6709dd2f31829286

这种url变成比如:


 /topic/hello-world

当前台触发一个路由时,有没有什么思路将topic title转化成对应数据库topic id 一一对应关系,如何保证topic titile的唯一性?

backbone node.js koa

konoka 10 years, 3 months ago

hello-world 的部分一般来说不是 title ,除非你的 Model 限制 title 必须唯一,否则无法使用这个属性来构造唯一的 url ;另外如果你的 title 是中文呢?直接用在 url 里吗?虽说不是不行,但明显不好嘛。

常见的做法是用另外一个属性单独存储这个部分,我记得 Wordpress 好像用一个叫 slogan 的字段吧?你创建资源的时候, title slogan 都要填,前者用于内容显示,后者则作为 url 的一部分。

这样一来, slogan 本身就是唯一的,你直接拿来当索引用就好了,也就无所谓和 id 的对应关系了。

红白悲剧了 answered 10 years, 3 months ago

Your Answer