我正在尝试为iPhone应用构建一个RailsAPI。Devise可以很好地通过Web界面登录,但我需要能够使用RESTAPI创建和销毁session,我想使用JSON而不是必须在sessionController上执行POST并解析HTML并处理一个重定向。我以为我可以做这样的事情:classApi::V1::SessionsController我在config/routes.rb中添加了:namespace:apidonamespace:v1doresources:sessions,:only=>[:create,:destroy]endendrakeroutes显示路由设置正确:
我正在尝试向Devise的SessionsController添加一个before_destroy过滤器。这是我尝试过的:我创建了一个包含before_destroy过滤器的模块和另一个包含我希望它调用的方法的模块。moduleUserTrackerprepend_before_filter:stop_tracking,:only=>[:destroy]moduleTrackerStopperdefstop_tracking#DostuffendendincludeTrackerStopperend然后我尝试使用UserTracker模块扩展SessionsController。Dev
我在使用Rails3和Devise时遇到了一个特殊问题。我的Rails应用程序有3种用户类型:客户、所有者和管理员routes.rb:devise_for:adminsdevise_for:ownersdevise_for:clientsapplication_controller.rb:defafter_sign_in_path_for(resource)ifresource=="client""/client_accounts/"+current_client.id.to_selsifresource=="admin"stored_location_for(:admins)||"/