【问题标题】:Using inputs_for with @conn将 inputs_for 与 @conn 一起使用
【发布时间】:2019-02-10 05:51:04
【问题描述】:

我正在尝试创建这样的表单:

 <%= form_for @form_object, registration_path(@conn, :register), [class: "register_form"], fn f -> %>
    <div class="register_alert">
      <%= Web.PartialView.render("flash_alert.html", conn: @conn) %>
      <%= inputs_for f, :user, [default: %{name_first: nil}], fn fu -> %>
        <%= label fu, :name_first, "FIRST NAME", class: "register_label" %>
        <%= text_input fu, :name_first, class: "register_text-field"%>
      <% end %>
      <%= submit "Sign Up", class: "register_register-button" %>
    </div>
  <%end%>

@form_object 是最初传入的conn,因为在他们输入数据(创建表单)之前我没有变更集。但是,在尝试运行此程序时,我不断收到非常有用的“参数错误”崩溃。如果我删除 inputs_for 部分,一切都很好。如何在 phoenix 中将 inputs_for 与连接对象一起使用?

正在使用 Phoenix 1.4.0。

【问题讨论】:

    标签: forms elixir phoenix-framework


    【解决方案1】:

    Plug.Conn 是一个 struct,几乎包含有关连接的所有内容。

    Phoenix.HTML.Form.form_for 接受连接对象作为第一个参数。

    由于您提供的有关错误消息的信息完全为零的Phoenix 提供的帮助甚至更少,因此我建议问题出在@form_object 的良好格式中。你手头显然有 @conn 对象,将其作为第一个参数传递:

    <%= form_for @conn, registration_path(@conn, :register) ...
    

    【讨论】:

    • 我声明 form_object 是一个 conn,而 form_for 不是问题。如上所述,inputs_for 是问题所在。我给的错误是凤凰给我的错误。如上所述,问题是如何将 inputs_for 与 conn 对象一起使用。这些都不能回答这个问题。
    • 如果您希望获得任何帮助,请分享您收到的完整错误消息。我们不是算命的。
    • 问题是:如何将 inputs_for 与 Plug.Conn 对象一起使用。你有这个工作的例子吗?因为我尝试过的任何方法都没有奏效,而您提供的是 form_for,而不是 inputs_for。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-02
    • 1970-01-01
    相关资源
    最近更新 更多