我正在构建一个可以以两种模式运行的应用程序。沙盒模式和生产模式。
在沙盒模式下,我想在我的 gen_server 中对数据库进行许多检查:如果表不存在,则创建它;如果列不存在,则添加它;如果列类型不允许我要存储的值然后更改它,等等。
在生产模式下,如果表不存在或列与值的类型不匹配,则会失败,没关系。
因此,为了避免像“case State#state.is_sandbox of true -> ...”这样的繁琐代码,我想为我的 gen_server 设置两个不同的模块,并且我想在 handle_call 或句柄信息。
实际上,我只是想从沙盒转到生产,但我认为如果它以这种方式工作,它可以向后工作。
谢谢。