关于后端的架构决策
Architectural decision regarding back end
在我的后端,我有一个 table 用于存储事件(活动)。
经过一些研究,我决定将主键存储为自动增量主键,因为它似乎比将其存储为 UUID 快得多。
现在在我的前端,我想创建一个路线来显示事件的概况。
而不是像这样的路线:xyz.com/events/1
。
我更愿意通过显示一个显示事件名称的唯一字符串来隐藏 id,但它会形成一个我可以在我的数据库中查询的唯一字符串。
我注意到很多网站(包括 Facebook)都可以做到这一点。
他们显示例如。 firstname.lastname
后面有一个数字。
实现此目标的最佳方法是什么?
如何从我可以查询的事件名称生成一个唯一的字符串?
在事件 table 中,我会存储额外的独特 slug(在事件保存操作时创建)。
f.e。 "Some great event" 有子弹 "some-great-event"。
如果 slug 不是唯一的,则需要额外区分 f.e。 "some-great-event-2"。
您使用 slug 准备 link 并作为标识符来查询数据库记录。
有很多库可以生成 slug,查看 github。
在我的后端,我有一个 table 用于存储事件(活动)。
经过一些研究,我决定将主键存储为自动增量主键,因为它似乎比将其存储为 UUID 快得多。
现在在我的前端,我想创建一个路线来显示事件的概况。
而不是像这样的路线:xyz.com/events/1
。
我更愿意通过显示一个显示事件名称的唯一字符串来隐藏 id,但它会形成一个我可以在我的数据库中查询的唯一字符串。
我注意到很多网站(包括 Facebook)都可以做到这一点。
他们显示例如。 firstname.lastname
后面有一个数字。
实现此目标的最佳方法是什么?
如何从我可以查询的事件名称生成一个唯一的字符串?
在事件 table 中,我会存储额外的独特 slug(在事件保存操作时创建)。 f.e。 "Some great event" 有子弹 "some-great-event"。 如果 slug 不是唯一的,则需要额外区分 f.e。 "some-great-event-2"。 您使用 slug 准备 link 并作为标识符来查询数据库记录。
有很多库可以生成 slug,查看 github。