转换为json时隐藏案例类的特定字段

时间:2014-11-25 12:38:55

标签: json scala spray

我在scala中使用spray for REST服务。我有一个案例类User,其中包含用户名,名字,姓氏,密码等字段。我想在转换为json时删除字段password。我正在使用muster库进行json转换。我怎样才能做到这一点?

我不想创建案例类的副本并重置密码字段。

1 个答案:

答案 0 :(得分:0)

拥有数据内部表示的模型和第二个模型,用于导出数据并在它们之间进行映射。这将全部发生在您选择的json序列化框架之前。

如果您坚持使用单一模型,则将密码设为Option[String](假设它当前为字符串),当您要导出时,执行user.copy(password = None)清除密码。我不知道是怎么做的,但是在spray-json中,如果一个选项是None,那么它就不会被序列化。