I built a page that is rendered differently depending on params
. The logic is something like this:
<% if params[:x] == "1" %>
<!--render version A-->
<% elsif params[:x] == "2" %>
<!--render version B-->
<% elsif params[:x] == "3" %>
<!--render version C-->
<% end %>
I want each version to have two links which link to the other two versions, so the urls should have different params. I have a url string original_url
, which is:
"localhost:3000/page?x=1"
and want to replace its parameter depending on params
. The other two versions should be:
"localhost:3000/page?x=2"
"localhost:3000/page?x=3"
How can I eliminate the pattern ?x=[number]
from original_url
and replace it with something else?
For version 1, I could do
request.original_url.sub("?x=1", "?x=2")
and then
request.original_url.sub("?x=1", "?x=3")
but then that wouldn't work on the other two versions.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…