我有几个不同的链接,除了一个小的区别,其他的都是一样的。是否可以将它们全部链接到同一路径,但使用不同的参数来更改控制器中一个微小差异的行为?
我在想这样的事情:
看法
<%= link_to "Link-A", link_path(@user), @x = 1 %>
<%= link_to "Link-B", link_path(@user), @x = 2 %>
用户控制器.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_to "Link-A", link_path(@user, x: 1) %>
<%= link_to "Link-B", link_path(@user, x: 2) %>
控制器:
def link
@user = User.find(params[:id])
x = params[:x]
#code that should be executed for both links
if x == 1
#do something
elsif x == 2
#do something else
end
end
关于ruby-on-rails - 我可以将参数传递到 Controller 路径吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29041676/