【发布时间】:2015-05-16 11:49:15
【问题描述】:
我有几个不同的链接,除了一个细微的差别外,它们做同样的事情。是否可以将它们全部链接到相同的路径,但使用不同的参数来改变控制器中那个微小差异的行为?
我在想这样的事情:
查看
<%= link_to "Link-A", link_path(@user), @x = 1 %>
<%= link_to "Link-B", link_path(@user), @x = 2 %>
users_controller.rb
def link
@user = User.find(params[:id])
#code that should be executed for both links
if @x == 1
#do something
elsif @x == 2
#do something else
end
end
我知道这个特定的代码可能甚至还没有接近正确,但希望它可以清楚地说明我想要做什么。
【问题讨论】:
-
你试过了吗,
link_path(@user, x: 1)?我认为这将传递params哈希 (params[:x]) 中的值。 -
How to replace a pattern in a string 的可能重复项,因为你也问过这个问题。
-
@engineersmnky 他们是完全不同的问题......这个是在询问如何访问控制器中的参数,一个是在询问如何替换模式。
标签: ruby-on-rails ruby hyperlink parameters controller