如何更改必填字段的错误消息?如果我有那样的东西
@required_fields ~w(name email)
并且我想显示“绝不为空”,而不是默认值“不能为空”?
最佳答案
目前,"can't be blank"
错误消息已硬编码到Ecto中。但是,您可以通过执行以下操作来替换此错误消息:
def changeset(model, params \\ :empty) do
model
|> cast(params, @required_fields, @optional_fields)
|> required_error_messages("no way it's empty")
end
def required_error_messages(changeset, new_error_message) do
update_in changeset.errors, &Enum.map(&1, fn
{key, "can't be blank"} -> {key, new_error_message}
{_key, _error} = tuple -> tuple
end)
end
希望对您有所帮助!
关于elixir - 如何在Phoenix框架中为必填字段添加自定义错误消息,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32032246/