【发布时间】:2017-07-09 21:33:40
【问题描述】:
我有一个产品页面,其 URL 形式为 http://host/products/{id}/{seo-friendly-url},其中“seo-friendly-url”部分可能类似于 category/subcategory/product。
products 控制器获取具有指定 ID 的产品,然后确保后面的 URL 对产品是正确的 - 如果不是,用户将被重定向到适当的 URL(商店中的所有 URL 都是正确生成的,重定向只是为了维护一个规范的 URL,以防用户输入错误或由于谷歌抓取它而导致 URL 发生变化等)。 ID 确保快速查找产品,最后部分确保关键字进入 URL。
为了检查 URL,我有一个 SQL 视图,它利用递归公用表表达式将产品 URL 块与其父类别 URL 的 URL 连接起来,一直到层次结构(通常只有 3 深)。
我最近遇到了面向文档的存储,我发现它在各种情况下都非常有用(例如,我的产品实体目前在不同的表中都有标签和多价购买价格和属性等)。
那么关于我的问题 - 我怎样才能在 mongoDB 中实现上述功能,或者有没有更好的方法来考虑它?天真的方法是单独检索层次结构中的每个类别,但我假设这会很慢。
相关:我在文档中读到跳过/限制对于大型结果集来说很慢 - 对于零售网站类别中可能出现的 25 种产品的最多 10 页来说,这是否会引起注意?
【问题讨论】: