3

私はRailsの考え方から来ており、多くのセッターをActiveRecordモデルに追加して、文字列(メールアドレスなど)をトリミング/小文字にしたり、電話番号を正規化してセパレータとして「-」を使用したりすることに慣れています。レコードを DRY に変更するコードを保持するため、setter メソッドが気に入っています。これは Elixir/Ecto で可能ですか?

4

1 に答える 1

4

現在、メカニズムはありません。あなたができる最善のことは、次のような関数を作成することです:

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

現在、このコードをカスタム タイプに移動する予定です。たとえば、データを適切にキャストして正規化する方法を知っている電子メール タイプを実装すると、Ecto クエリとフィールド値の割り当て時にキャストが機能します。

于 2014-12-31T20:36:37.600 に答える