3

我来自 Rails 思维模式,习惯于向 ActiveRecord 模型添加大量设置器以修剪/小写字符串(例如电子邮件地址)或规范电话号码以使用“-”作为分隔符。我喜欢 setter 方法,因为它保留了修改记录 DRY 的代码。Elixir/Ecto 可以做到这一点吗?

4

1 回答 1

4

目前,没有任何机制。您可以做的最好的事情是创建一个函数,例如:

User.normalize(%User{}, conn.params["user"])

现在,我们正计划将此代码移至自定义类型。因此,例如,您实现了一个知道如何正确转换和规范化数据的电子邮件类型,并且转换将在 Ecto 查询和分配字段值时起作用。

于 2014-12-31T20:36:37.600 回答