开发者

$.get JQuery passes parameter and creates a new DB record but fails to redirect in my browser window?

 $.get("/thanks", { token: response.session.access_token, facebook_user: response.session.uid}, function(data) 

The following piece of code is processing a get request towards my rails controller. Why isn't my page being redirected, yet the parameters and get request are working to create a new user?

This is probably a problem with JQuery, but if you are skilled in Ruby/Rails perhaps I have a controller i开发者_开发技巧ssue:

# GET /homes/new
# GET /homes/new.xml
def new
  @home = Home.new

  if params[:token]
    @token = params[:token]
    @facebook_user = params[:facebook_user]

    Rails.logger.error(@token)
    Rails.logger.error(@facebook_user)
    @user = User.find_by_user_id(@facebook_user)
    @graph = Koala::Facebook::API.new(@token)

    if User.find_by_user_id(@facebook_user) == nil
      User.create(:oauth_token=>"#{@token}", :user_id=>"#{@facebook_user}")
    else
      user = User.find_by_user_id(@facebook_user)
      user.update_attributes(:oauth_token=>"#{@token}")
    end
  end

  respond_to do |format|
    format.html # new.html.erb
    format.xml  { render :xml => @home }
  end
end


What redirect? I don't see anything in the code.

I also believe you need to set the response type in the $.get method, the default would be json I would think, not html or xml. (Not a 100% sure on this).

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜