我是Rails的新手,我正试图找出正确的方法来做到这一点,但我很难在Google上找到答案。在我的应用程序中,用户执行搜索,查询第三方API,然后显示结果列表供用户选择。当用户点击"添加"他们想要的结果按钮,我将包含API ID的hidden_field_tag传递给我的控制器,并在数据库中创建一条记录。
我的问题是:我是否应该为每个结果提供一个表单,如下面的代码?或者我应该使用link_to帮助器吗?还有更好的方法吗?
感谢。
我目前的代码:
<% @series.each do |series| %>
<tr>
<td>
<%= form_tag({controller: "series", action: "create"}, method: "post") do %>
<%= hidden_field_tag(:series_id, series.xpath('seriesid').text) %>
<%= submit_tag("Add") %>
<%= series.xpath('seriesname').text %>
<% end %>
</td>
</tr>
<% end %>
答案 0 :(得分:1)
您可以使用链接到post http方法。例如,
link_to "Add", series_path(series_id: series.xpath('seriesid').text), method: post
(根据您的需要更改参数名称和操作。)
Rails让js组件将其转换为自动提交的表单。