views:

65

answers:

0

I've been playing around with jqTouch to create a mobile version of my Rails app.

I use Devise for authentication, but it won't work with jqtouch.

It has something to do with jqtouch's "auto-ajax" functionality. I used a "rel=external" attribute on my sign in form to get it to do something at all (before it simply wouldn't do anything), but now it appears to be submitting the wrong parameters.

Any ideas?

Successful log (from browser):

 Started POST "/users/sign_in" for 127.0.0.1 at Mon Oct 11 17:10:48 -0400 2010
    Processing by Devise::SessionsController#create as HTML
    Parameters: {"commit"=>"Sign in", "authenticity_token"=>"yde1OPfI5kptBPPjsrb97wFoI6jB1V7zyRis05KgMZE=", "utf8"=>"\342\234\223", "user"=>{"password"=>"[FILTERED]", "email"=>"[email protected]"}}
    accountable-dev['users'].find({:_id=>"4cab86c8742018078b000002"}, {}).limit(-1)
    Redirected to http://localhost:3000/home
    Completed 302 Found in 12ms

Unsuccessful log (from iPhone simulator):

Started POST "/users/sign_in" for 127.0.0.1 at Mon Oct 11 17:11:39 -0400 2010
    Processing by Devise::SessionsController#create as HTML
    Parameters: {"commit"=>"Sign in", "authenticity_token"=>"t18esVzt32EiVZbKpugQ9WozNsdY7cM2eAYAI+tCeDo=", "utf8"=>"\342\234\223", "user"=>{"password"=>"[FILTERED]", "email"=>"[email protected]"}}
    accountable-dev['users'].find({:authentication_token=>"[email protected]"}, {}).limit(-1)
    Completed   in 22ms

Notice how the db is looking for an authentication token, rather than an email address in the broken example...