Elixir 如何在Phoenix框架中验证存在性?
Ecto可以验证格式、包含性、唯一性等,但我看不出如何验证存在性?如果字段为空,是否有向字段添加错误的方法?如Elixir 如何在Phoenix框架中验证存在性?,elixir,phoenix-framework,Elixir,Phoenix Framework,Ecto可以验证格式、包含性、唯一性等,但我看不出如何验证存在性?如果字段为空,是否有向字段添加错误的方法?如验证RoR中是否存在?我可以手动创建,这不是问题,但我想知道是否已经存在类似于validate\u presence\3之类的方法?只需在模型中使用必填字段注释器即可 @required_fields ~w(name email) 对于总共有4个字段和2个必填字段的客户模型,如下所示: defmodule HelloPhoenix.Customer do use HelloPhoe
验证RoR中是否存在?我可以手动创建,这不是问题,但我想知道是否已经存在类似于validate\u presence\3
之类的方法?只需在模型中使用必填字段注释器即可
@required_fields ~w(name email)
对于总共有4个字段和2个必填字段的客户模型,如下所示:
defmodule HelloPhoenix.Customer do
use HelloPhoenix.Web, :model
schema "customers" do
field :name, :string
field :email, :string
field :bio, :string
field :number_of_pets, :integer
timestamps
end
@required_fields ~w(name email)
@optional_fields ~w()
def changeset(model, params \\ :empty) do
model
|> cast(params, @required_fields, @optional_fields)
end
end
Phoenix将自动验证所需字段的存在,并在表单顶部显示错误消息,如下所示:
如何更改自定义错误消息?如果我想显示“废话废话”而不是“不能是空白的”…好吧,那将是一个单独的问题!好吧,那我们就另提一个问题吧!好了->尽管看起来是这样,但由于某种原因,它在我的情况下不起作用,它不会给程序添加错误attributes@JustMichael检查您是否正在使用最新版本的phoenix_-Exto软件包