我运行一些代码iex -S mix
还行吧:
user = Repo.get User, 1
Ecto.Changeset.change user, %{name: "xxxx"}
Run Code Online (Sandbox Code Playgroud)
但这是错误的:
User.change user, %{name: "xxxx"}
Run Code Online (Sandbox Code Playgroud)
增加(UndefinedFunctionError) undefined function Rumbl.User.change/2
我注意到import Ecto.Changeset
文件 web.ex 中有函数模型
def model do
quote do
use Ecto.Schema
import Ecto
import Ecto.Changeset
import Ecto.Query, only: [from: 1, from: 2]
end
end
Run Code Online (Sandbox Code Playgroud)
所以我认为 User.change/2 应该与 Ecto.Changeset.change/2 一样工作,对吗?