我正在尝试创建这样的表单:
<%= 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。
答案 0 :(得分:0)
Plug.Conn
是struct
,几乎包含有关连接的所有内容。
Phoenix.HTML.Form.form_for
接受连接对象作为第一个参数。
由于您提供的错误消息的信息完全为 Phoenix ,甚至比 Phoenix 所提供的帮助要少得多,所以我建议问题的根源是@form_object
。您显然手头有@conn
个对象,将其作为第一个参数传递:
<%= form_for @conn, registration_path(@conn, :register) ...