【问题标题】:Getting turbolinks wrapper to work with Ruby on Rails Devise让 turbolinks 包装器与 Ruby on Rails Devise 一起工作
【发布时间】:2017-03-17 15:06:32
【问题描述】:

对于我的应用程序,我正在尝试设置 Turbolinks Mobile 包装器>。我遇到了无法登录应用程序的问题(我认为问题是我需要修改 Devise 以使其切换到 XHR 以在移动设备上工作)。我的登录表单使用设计,但我看不到代码。

Using: ruby "2.4.0" gem "rails", "5.0.2" gem "turbolinks", "~> 5.0.0.beta" gem "devise", ">= 4.2.0" gem "devise-async", git: "https://github.com/mhfs/devise-async", branch: "devise-4.x" # for user authentication

我的问题是我在哪里查看或我需要做些什么来修改 DEVISE 以使其能够为 turbolinks 移动包装器发送 XHR?

现在,它无法登录,我知道(或者我正在考虑)我需要让 DEVISE 切换到 XHR,但我不知道如何。

关于如何做到这一点的建议?还是对参考资料的建议?

【问题讨论】:

    标签: ruby-on-rails devise turbolinks


    【解决方案1】:

    您需要更新您的设计初始化程序以接受 ajax 请求。

    config.http_authenticatable_on_xhr = false
    config.navigational_formats = ["*/*", :html, :json]
    

    您可能还需要更新注册和会话控制器以响应 json。

    format.json { render json: resource }
    

    【讨论】:

    • 嗨斯蒂芬,谢谢 - 赏金是你的!快速提问,我在这里添加了 format.json(只是在创建时) - 这有意义吗:take.ms/pihdd 非常感谢您的回答。
    • 急切加载并非特定于 JSON 响应。该警告只是告诉您正在加载未使用的数据。查看guides.rubyonrails.org/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-01-16
    • 2012-01-16
    • 1970-01-01
    • 2017-01-20
    • 2014-01-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多