在我的凤凰应用程序中,我需要通过其名称验证单个字段。我需要这个,因为我通过ajax机制进行更新,我一次只编辑/更新一个字段。
我该怎么做?也就是说,给定一个字段名称,我该如何验证那个而且只有那个字段?请注意,根据我的验证逻辑,该字段的值可能有效,即使它是空的。
答案 0 :(得分:1)
我想我理解你的问题了。
我们假设您拥有用户模型,其中包含字段名称,年龄,体验以及您希望 更新/编辑的时间您将发送user_id和更改。
在更新方法中,我们将通过 user_id 获取用户并进行此更改并验证更改集(例如:User.changeset(Repo.get( User,user_id),input_change))。由于其他字段没有变化,从字面上看,您只验证 只有一个字段
因此,您可以将所有验证放在变更集中
def changeset(model, params) do
model
|> cast(params, @required_fields, @optional_fields)
|> validate_age
|> validate_experience
|> validate_name
end