2014-10-07 46 views
0

我想在具有两个文本输入和按钮的Active Admin资源的索引视图中创建一个简单的侧栏。按下按钮时触发了一个collection_action,但我无法弄清楚如何将两个输入的值存入collection_action中。下面是我的一部分,我的渲染我的侧边栏:Active Admin Sidebar从文本输入中获取值

<form accept-charset="UTF-8" action="/admin/earned_points" class="filter_form" id="new_e" method="get"> 
    <div class="filter_form_field filter_string search"> 
    <label class="label" for="email">Email:</label> 
    <input type="text" id="email" /> 
    </div> 
    <div class="filter_form_field filter_string search"> 
    <label class="label" for="filename">File Name:</label> 
    <input step=any" type="text" id="fileName" placeholder="EarnedPointData" /> 
    <a href=<%= export_admin_earned_points_path(controller.params) %>> 
     <input style="margin-top:15px" type="submit" id="Export" value="Export"/> 
    </a> 
    </div> 
</form> 

我很少做web开发,所以我道歉,如果这似乎是一个非常基本的问题。任何帮助将不胜感激。

谢谢

UPDATE:

原来我的结构是所有坏。感谢nistvan指出我应该能够将它们从参数中拉出来。从那我意识到我需要更好地设置我的形式。我最终使用嵌入式红宝石来做到这一点。以下是我最后的部分。

<%= form_tag export_admin_earned_points_path, method: :get do %> 
    <%= label_tag(:email, "Email:") %> 
    <%= text_field_tag(:email, nil, placeholder: '[email protected]') %> 
    <%= label_tag(:filename, "File Name:") %> 
    <%= text_field_tag(:filename, nil, placeholder: 'EarnedPointsData') %> 
    <%= submit_tag("Export") %> 
<% end %> 

回答

1

您可以通过params(hash)变量到达controller_action中传递的参数。 如果您在控制器操作中引发错误,您可以查看params如何显示:

raise params.inspect 
+0

感谢您的洞察力。我试图这样做,但他们没有参与。我最终意识到我的结构是错的。我将更新我的问题,以表明我做了什么来让我将参数拉出来。谢谢。 – KevinM 2014-10-08 13:10:41