登录与设计通过jQuery移动



我们有一个工作应用程序使用设计的身份验证(电子邮件,密码)。

为了添加移动界面,我们使用jQuery移动-一切都很好,除了通过设计登录不会表现。

点击" login "后,Rails正确处理请求,但我们得到的是MissingTemplate(设计/会话/创建)错误。


当前设置:

config.http_authenticatable_on_hxr = false
config.navigational_formats = [:"*/*", "*/*", :html, :mobile]

我们的灵感来自Railscast #199(因此:mobile): http://railscasts.com/episodes/199-mobile-devices

尝试本指南的最后一步:如何:使设计工作与其他格式,如手机,iphone和ipad(特定于Rails)。

记得用:to_mobile而不是:to_ios,所以:

ActionController::Responder.class_eval do
  alias :to_mobile :to_html
end

在config/initializers

中的新初始化器文件中

覆盖设计的SessionsController作品。我从github中获取了控制器的代码,并为移动设备添加了redirect_to:

app/controllers/sessions_controller.rb:

class SessionsController < Devise::SessionsController
  def create
    resource = warden.authenticate!(:scope => resource_name, :recall => "#{controller_path}#new")
    set_flash_message(:notice, :signed_in) if is_navigational_format?
    sign_in(resource_name, resource)
    if mobile_device?
      redirect_to wherever_you_want
    else
      respond_with resource, :location => redirect_location(resource_name, resource)
    end
  end
end

routes.rb中:

devise_for :users, :path => '/', :controllers => { :sessions => "sessions" }

不要忘记创建app/views/sessions/模板

查看这篇文章

jQuery Mobile, Rails和design

在我的应用程序中,我添加了新的视图设计/会话/create.mobile。Erb和设置在这个视图javascript重定向在某些页面。这看起来不是一个正确的解决方案,但它工作。

相关内容

  • 没有找到相关文章

最新更新