Anybody no how to read the anchor of a request?
I make an redirect_to like this:
redirect_to :controller=>“foo” :action=>“index” :anchor=>“bar”
then in action index,I try to read url like this:
c=request.path_parameters[‘controller’]
ac=request.path_parameters[‘action’]
an=request.path_parameters[‘anchor’]
finally I get c and ac the value I want,but fail to get an
Anybody no how to read the anchor of a request?
I make an redirect_to like this:
redirect_to :controller=>“foo” :action=>“index” :anchor=>“bar”
then in action index,I try to read url like this:
c=request.path_parameters[‘controller’]
ac=request.path_parameters[‘action’]
an=request.path_parameters[‘anchor’]
finally I get c and ac the value I want,but fail to get an
Any thought?Thanks!
You recieve the parameter by using params in your controller
You do not have permission to post to group rubyonrails-talk. You
may need to
join the group before being allowed to post, or this group may not be
open to
posting.
You do not have permission to post to group rubyonrails-talk. You
may need to
join the group before being allowed to post, or this group may not be
open to
posting.
and I also got a correct redirect url with an anchor I set,so I think
the anchor is set at least by the redirect way. And I think the
problem is params didn’t get it. The proof is when I use
params.to_json,what i get is something like:
{action: “index”, controller: “foo”},but no anchor.
I also use
redirect_to :controller=>“foo” :action=>“index” :anchor=>“bar”
And I use logger.info(params[:anchor]) to monitor the result,and what
I get is always a blank row.By the same time,I have
logger.info(params[:controller]) get the right value there.
You recieve the parameter by using params in your controller
params[:anchor]
Are you completely sure this works? As far as I know, browsers don’t
pass anchor information in their requests, and my experimentation here
seems to verify this. I don’t think it’s possible to read the anchor
from the URL on the server (though you can set it there).
I get the right value with params[:controller] and params[:action],but
nothing with params[:anchor]
i’think
Bill K. is right, the reason is the browser won’t send anchor to
the server
here’s my code of controller:
class FooController < ApplicationController
def o
logger.info(“i’m in o”)
logger.info(params[:controller])
logger.info(params[:action])
logger.info(params[:anchor])
logger.info(params.to_json)
redirect_to (:action=>“a”,:anchor=>“blabla”)
end
def a
logger.info(“i’m in a”)
logger.info(params[:controller])
logger.info(params[:action])
logger.info(params[:anchor])
logger.info(params.to_json)
respond_to do |format|
format.html {render :text=> “hi”}
end
end
end
and i send a request in browser like:“localhost.3000/foo/o#kkk”
and i get a hi response with a url:flocalhost.3000/foo/a#blabla
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.