我正在为我的模型使用 uuid,他们会发表评论。我这样做是为了不必在我的评论表中定义任何类型。
为了获得最佳性能和存储限制,我在表格中将 uuid 作为二进制文件。
> Task.first.id
# gives
\xD8<\x92&\x14\x80\x11\xE2\x82\xB8\xC4\x85\b\"\xE2_
如果我使用例如:
<%= link_to "task", task_item %>
我不会得到任何有效的链接。
<a href="http://localhost:3000/tasks/%D8X%C4n%14%80%11%E2%82%B8%C4%85%08%22%E2_">Task</a>
我的问题是。我可以对我的模型做些什么,这样我就不必每次在我的视图和控制器中来回解析我的 uuid。
编辑:请不要评论或回答我没有 uuid 作为主键。我的目标是拥有多个网络应用程序和其他客户端,如本地 linux 和/或 android 应用程序,它们可以相互通信。它们也可以在离线模式下或通过本地网络工作,然后在用户需要时与服务器同步。所以我宁愿已经开始使用 uuid,这样我以后就不必进行大量的大型数据库合并。