Elixir/Phoenix-控制器中的HTML表单解析

Elixir/Phoenix-控制器中的HTML表单解析,elixir,phoenix-framework,phoenix,Elixir,Phoenix Framework,Phoenix,我有一个HTML表单: <form id="filtering-rule-form"> <input type="hidden" value="<%= @token %>" name="_csrf_token"/> User name/email prefix:<br> <input type="text" name="email-prefix" id="email-prefix">@railglorg.net<br> S

我有一个HTML表单:

<form id="filtering-rule-form">
<input type="hidden" value="<%= @token %>" name="_csrf_token"/>

User name/email prefix:<br>
<input type="text" name="email-prefix" id="email-prefix">@railglorg.net<br>
Scanner<br>
    <%= for scanner <- @scanners do %>
        <input type="checkbox" id="<%= scanner.short_name %>" value="<%= scanner.short_name %>" name="scanner[]" /><%= scanner.scanner_name %> <br>
    <% end %>

Subject<br>
<input type="text" name="subject" id="subject"><br>
Quarantine score threshold:<br>
<input type="text" name="quarantine-score" id="quarantine-score"><br>
Delete score threshold:<br>
<input type="text" name="delete-score" id="delete-score"><br>
Reject:<br>
<input type="radio" name="reject" value="reject" id="reject-reject" checked > Reject<br>
<input type="radio" name="reject" value="delete" id="reject-delete" > Delete<br>
<button type="button" id="filtering-rule-save-btn">Save</button>
</form>
这样的字符串被传递给控制器

  def filtering_rule_save(conn, %{"filtering_rule_form_data" => filtering_rule_form_data}) do
    #
  end
_csrf_token=KNNGSZ9UKY80EYFDNVOMAFEW9GIE3EFRSWLOKR9CIRK9MGWFHTVSP和电子邮件前缀=测试和扫描程序%5B%5D=ps和扫描程序%5B%5D=clamdscan和主题=测试主题和隔离分数=5和删除分数=5和拒绝=拒绝

我在控制器里找到这条线

  def filtering_rule_save(conn, %{"filtering_rule_form_data" => filtering_rule_form_data}) do
    #
  end

我不知道如何解析所有的表单值​​正确地输入控制器。请注意,表单有一个HTML数组(scanner[])。我将非常感谢您的帮助。

尝试以下操作:
%{“筛选规则表单数据”=>%{“电子邮件前缀”=>电子邮件前缀,…}}
@ipinak不幸的是,这不起作用。我得到一个错误:“VirusfreeWeb.ConfigurationController.filtering_rule_save/2中没有匹配的函数子句”我尝试了以下方法:%%{“filtering_rule_form_data”=>%%{“email prefix”=>email_prefix,“scanner”=>scanner,“subject”=>subject,“检疫分数”=>q_s,“delete score”=>d_s,“reject”=>reject}只需检查
def filtering\u rule\u save(连接,数据)的功能,执行:IO.inspect(数据)