Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Elixir Phoenix Phoenix.HTML.Safe未实现_Elixir_Phoenix Framework - Fatal编程技术网

Elixir Phoenix Phoenix.HTML.Safe未实现

Elixir Phoenix Phoenix.HTML.Safe未实现,elixir,phoenix-framework,Elixir,Phoenix Framework,在我的post模型上,我实现了一个简单的验证 def changeset(model, params \\ :empty) do model |> cast(params, @required_fields, @optional_fields) |> validate_length(:content, min: 2) |> validate_length(:content, max: 500) end 在提交Post-create表单视

在我的post模型上,我实现了一个简单的验证

  def changeset(model, params \\ :empty) do
    model
    |> cast(params, @required_fields, @optional_fields)
    |> validate_length(:content, min: 2)
    |> validate_length(:content, max: 500)
  end
在提交Post-create表单视图时,如果用户提交有问题,我想显示错误,下面是呈现错误的视图

<%= form_for @changeset, @action, fn f -> %>
  <%= if @changeset.action do %>
    <div class="alert alert-danger">
      <p>Oops, something went wrong! Please check the errors below:</p>
      <ul>
        <%= for {attr, message} <- f.errors do %>
          <%IEx.pry%>
          <li><%= humanize(attr) %> <%= message %></li>
        <% end %>
      </ul>
    </div>
  <% end %>
%>
哎呀,出问题了!请检查以下错误:


    在变更集中显示错误消息的正确方法是使用

    替换:

    <li><%= humanize(attr) %> <%= message %></li>
    

    谢谢,我没有意识到我的应用程序使用的是Ecto 2.0。我相信它是在Phoenix 1.1中与Gettext()一起添加的,与Ecto 2.0无关。我知道了,我是从旧版本的Phoenix复制了模板的,谢谢你可能也升级了Phoenix。我在Phoenix 1.1+Ecto 1.1.8应用程序上运行了上述“演示”。
    <li><%= humanize(attr) %> <%= translate_error(message) %></li>
    
    iex(1)> MyApp.ErrorHelpers.translate_error {"should be at least %{count} character(s)", [count: 2]}
    "should be at least 2 character(s)"