I''m having some trouble with respond_to to handle multiple request types from a single action. The action: def login return if request.get? #just show the login.rhtml page on HTTP GET self.current_user = User.authenticate(params[:login], params[:password]) respond_to do |type| type.js { render } # renders login.rjs type.html do #fallback for standard requests if self.current_user redirect_back_or_default(:controller => ''/account'', :action => ''index'') flash[:notice] = "Logged in successfully" else flash.now[:notice] = "Login or password incorrect. Try again." end end end end I have two views.. the rjs template (login.rjs) and login.rhtml It seem''s as if login.rhtml is rendering on all requests: Rendering within layouts/application Rendering account/login Rendered account/_login (0.00124) Rendered account/_login (0.00089) Rendered shared/_header (0.00070) Rendered shared/_footer (0.00070) Completed in 0.01152 (86 reqs/sec) Any ideas? Thanks, Raja