我是sailjs的新手。你知道是否有可能实现一个友好的 URL 系统?
例如,如果我想管理产品,我如何在控制器中通过格式化的标题而不是 id 来处理它。
谢谢
Sailsjs 没有对此的内置支持,但您必须采取的步骤非常简单。
url 中的这些格式化字符串称为 slugs。在npm上快速搜索会提供几个结果。
使用 Sails 处理 slug 的方法是在您的产品模型上实现生命周期回调(向下滚动到有关回调的部分)。
使用 beforeCreate 方法并将您的 slug 生成到模型上的属性中。在 beforeUpdate 中,您应该检查您之前 slugged 的数据是否已更改,并在需要时创建一个新的 slug。
创建一个匹配的路由。例如 /product/:slug
在您的控制器中,您只需将 where 子句从产品 id 切换到您在模型 beforeCreate 方法中生成的属性。
如果存在两个产品具有相同名称的可能性,则应将产品 ID 或其他唯一信息添加到 slug。
快乐编码。如果有不清楚的地方发表评论