Ecto.Changeset.change/2 知らなかった
Ectoのmany_to_many
のドキュメントを読んでいたら、使用例の中でEcto.Changeset.change/2
という関数が使われていました。
構造体からchangesetをつくってくれる関数なようです。知らなかった。struct
入れてもchangeset
入れてもいいみたい。キャストやバリデーション無しで変更を入れたいときに使うのじゃ、とのこと。
user = Repo.get(User, 1) changeset = Ecto.Changeset.change(user) changeset = Ecto.Changeset.change(user, %{name: "john"}) changeset = Ecto.Changeset.change(changeset, %{age: user.age + 1})