【发布时间】:2016-04-22 03:31:43
【问题描述】:
免责声明:我已经检查了here 的问题,但它没有回答我的问题。
我试图想出一种方法来解析 JSON 的嵌套结构。示例:
{"name": "blah blah", "address": {"street": "smthing"}}
我想达到这个结果:
%User{name: "blah blah", address: %Address{street: "smthing"}}
因为这样插入验证会更容易(例如使用Vex)。
我知道 Poison 支持“as struct”选项,但它不提供嵌套。以上将被解析:
%User{name: "blah blah", address: %{"street" => "smthing"}}.
我知道我可以为模块 User 编写解码器实现,但我猜这不是预期的用例,它不会是通用的。
当我想知道一个实现时,我找不到一种方法来判断一个原子是否是一个模块......也许我必须选择:code.is_loaded(module_name)?
无论如何,在尝试实现之前,我想知道是否有我没有看到的东西。
【问题讨论】: