由于我们不应该公开数据库的内部主键id值,我们使用hashid映射来生成基于内部键的外部版本。在查询结果中,我们覆盖apply / unapply以在这两者之间进行映射。但是,在查询时,请使用像
这样的过滤器users.filter(_.id === userId)
似乎并不是一种自动映射的简单方法。一种选择是具有一些映射功能
users.filter(_.id === toInternalHash(userId))
但这需要对现有代码进行大量更改。
此外,没有足够的光滑知识来重载===运算符。有什么建议吗?