【发布时间】:2018-02-13 09:10:19
【问题描述】:
我在Ecto.schema 中读到,我们可以通过这样做获得字段的fields 和types:
Model.__schema__(:fields)
Model__schema__(:types)
我有模块属性常量@required_fields 和@optional_fields。
我们有什么方法可以从变更集或架构函数中获取 @required_fields 和 @optional_fields?
谢谢
【问题讨论】:
-
这里的必需和可选是什么意思?该字段可以是虚拟的/非虚拟的,但我没有看到任何方法可以在架构定义中使字段成为必需和可选。
-
@Dogbert 让我向您展示架构。我说的是
-
什么是
attr?我在 Ecto 的文档中没有看到它。 -
如果您只是想避免变更集中的代码重复,您可以将它们声明为模块属性
@required_fields [...] -
@Dogbert 我在变更集中设置了
@required_fields。我只想将它们作为数组或列表获取。无论如何,我们是否通过变更集功能获得它们。你认为有可能吗?