を実装していない、私はポストを提出するには簡単な検証フェニックスPhoenix.HTML.Safe私のポストモデルで
def changeset(model, params \\ :empty) do
model
|> cast(params, @required_fields, @optional_fields)
|> validate_length(:content, min: 2)
|> validate_length(:content, max: 500)
end
を実装しているから、何か問題があった場合、ビューを形成作成、私はエラーを表示したいと思いますユーザーの提出は、ここでエラー
<%= 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 %>
私はこれが起こっている理由を見つけるカントこのエラー(Protocol.UndefinedError) protocol Phoenix.HTML.Safe not implemented for {"should be at least %{count} character(s)", [count: 2]} (phoenix_html) lib/phoenix_html/safe.ex:74: Phoenix.HTML.Safe.Tuple.to_iodata/1
を取得していますにレンダリングする図であり、私が持っていました完全
更新働いていた(また、フェニックスのドキュメントで)別のフェニックスアプリで同様の検証 - 以前のアプリが古いエクトと鳳凰のバージョンを使用して使用していたが、私はエクト2.0 +とフェニックス1.1、
で、現在午前
はありがとうを、私は私のアプリは、私はそれがフェニックスで追加されたと信じていエクト2.0 – coderVishal
を使用していたが実現しませんでした1.1とGettext(http://www.phoenixframework.org/blog/upgrading-from-v10-to-v11)はEcto 2.0とは関係がありません。 – Dogbert
私は、古いバージョンのphoenixからテンプレートをコピーしました。ありがとうございました – coderVishal