【问题标题】:Adding Records from a table of search results in Rails从 Rails 的搜索结果表中添加记录
【发布时间】:2014-02-14 04:16:28
【问题描述】:

我有一个结果表,代表对各种社交媒体网站的搜索。该表包含大量内容,例如图像、描述、名称等。

用户可以选择在表格中的任何元素上单击“添加”按钮,然后该用户就会将该内容与他们的帐户相关联。

我不知道该怎么做。这是我的解决方法:

 <td> <%= link_to "Add", trackers_path( social_id: t.id.to_s), method: :post  %> </td>

我可以发布到跟踪器路径,但有两个问题。

  1. 如何嵌套 url_options 以便强参数只需要一个过滤器?现在他们以params["social_id"] 的形式出现,我想使用params["trackers"]["social_id"] 引用它

  2. 有没有更好的方法来做到这一点?

【问题讨论】:

  • 您可以发送为 trackers_path(trackers: { social_id: t.id.to_s}) 但是,实际上您不应该调用 trackers_path,您最好定义一个 add 方法,将其添加到路由中,稍后称它为 add_trackers_path(social_id: t.id.to_s)

标签: ruby-on-rails webforms ruby-on-rails-4 nested-attributes strong-parameters


【解决方案1】:

如 cmets 中所述,要将所有参数放入单个过滤器中,您需要执行以下操作:

tracker_path(filters: { social_id: t.id.to_s } )

或者,您可以使用表单来复制:

<%= form_tag tracker_path, method: :post do %>
   <%= text_field_tag "filters[:social_id]" %>
<% end %>

【讨论】:

    猜你喜欢
    • 2010-12-08
    • 1970-01-01
    • 2014-08-03
    • 2019-01-05
    • 2015-04-12
    • 2015-07-17
    • 1970-01-01
    • 1970-01-01
    • 2016-08-16
    相关资源
    最近更新 更多