我已经看过很多关于URL路由的讨论,以及很多很棒的建议......但在现实世界中,我没有看过的一件事是:
- 使用空格和非法字符创建友好URL
- 查询数据库
假设你正在建立一个医疗网站,里面有文章用类别和可选的子类别.(1对多).(可以使用任何一个例子,但医学领域有很多长话)
示例类别/子/文章结构:
- 您的一般健康(类别)
- 自然健康(子类别)
- 你身体的免疫系统以及为什么需要帮助.(文章)
- 植物和草药真的是解决方案吗?
- 我应该吃强化食品吗?
- 顺势疗法
- 什么是顺势疗法药?
- 健康饮食
- 你应该每天喝10杯咖啡吗?
- 有机蔬菜值得吗?
- 汉堡王是邪恶的吗?
- "法式咖啡馆"或美式咖啡更健康吗?
- 疾病和病症(类别)
- 自身免疫障碍(子类别)
- 人的头号杀手是一种疾病
- 如何获得帮助
- 遗传条件
- 怀孕前预防脊柱裂.
- 你是否倾向于活很长时间?
- FooBar博士的个人建议(分类)
- 我对草药和自然疗法的看法(文章 - 没有子类别)
- 你为什么要关心自己的健康?
- 可以正确饮食并保持良好的饮食习惯.
- 不流血的手术成熟了吗?
在这样的结构中,如果你去,你将会有一些LOOONG网址:/ {Category}/{subcategory}/{Article Title}
此外,还有很多非法字符,比如#!?'é"等
因此,问题是:
- 你会如何处理非法角色和空间?(优点和缺点?)
- 你会处理从数据库中获取此信息吗?
- 换句话说,您是否相信数据库可以找到项目,传递标题,或者拉出所有标题并在代码中找到密钥以获取密钥以传递给数据库(两次调用数据库)?
注意:我总是看到漂亮的漂亮例子,如/ products/beverages/Short-Product-Name /如何处理一些丑陋的例子^ _ ^