0

我有一个像这样在元素上绑定 id 的视图。

<a href="/listings/edit"><li onclick="edit(<%=listing.id%>);"" class="edit-listing"></li></a>

单击此按钮将转到我的列表/编辑编辑控制器和编辑视图。我想将 href 传递给我的列表控制器的列表 ID。这是我的控制器:

def edit
    @listings = Listings.find_by(id: x)//x is my expected id
end

我厌倦了把我的代码改成这个。

<a href="/listings/edit?listingid=<%=listing.id%>"><li onclick="edit(<%=listing.id%>);"" class="edit-listing"></li></a>

def edit(listingid)
@listings = Listings.find_by(id: listingid)
end

我将 href 创建为查询字符串并将其传递给变量,但出现错误。参数数量错误(0 代表 1)

我还尝试将其设置为隐藏值,然后从编辑控制器上的参数中提取它,但它似乎在编辑控制器上不可用,因为它呈现了一组新页面。有任何想法吗?谢谢!

4

1 回答 1

0

查询的参数在params哈希中找到

例如 :

def edit
  @listings = Listings.find_by(id: params[:listingid])
end

更多关于这里的控制器

此外,rails 有简洁的助手,因此您不必编写大量的 html :

<%= link_to edit_listing_path(listing) do %>
    ....
<% end %> 

看看这里

于 2013-08-29T09:29:25.370 回答