【问题标题】:Devise does not use custom CSS when opened directly, but works when using button on other pageDevise 直接打开时不使用自定义 CSS,但在其他页面上使用按钮时有效
【发布时间】:2019-09-24 18:09:38
【问题描述】:

我有一个带有 ActiveAdmin 的 Rails 应用程序和一个名为“Users”的附加设计模型,我生成该模型以保持管理员和用户登录分开。 主页上有如下所示的登录和注册按钮:

    - if !user_signed_in?
  .nav.navbar-form.navbar-right
    %a.form-control.btn.btn-register{href: 'register'} Register

  .nav.navbar-form.navbar-right.dropdown
    %button#loginMenu.btn.btn-login.dropdown-toggle{"aria-expanded" => "true", "aria-haspopup" => "true", "data-toggle" => "dropdown", :type => "button"} Login
    %div.dropdown-menu.feeds_dropdown{"aria-labelledby" => "feedMenu"}
      = render 'users/shared/new'

我生成了视图来自定义注册菜单并使用 CSS/SASS 对其进行样式设置。现在,当我使用主页上的按钮打开注册时,它会将我带到http://localhost/register,我可以看到所有 CSS 都已应用。但是,一旦我重新加载页面或直接在新选项卡中打开 url,就不会应用任何样式,我只会看到一个简单而丑陋的 HTML 页面。

在我的浏览器检查器中检查时,我注意到当我使用按钮到达站点时,请求显示为“xhr”,如果我手动加载它,它会显示为“文档”。

这里发生了什么,我怎样才能让它始终使用 CSS?

【问题讨论】:

    标签: ruby-on-rails ruby sass devise haml


    【解决方案1】:

    Welp,我现在觉得有点傻。

    = stylesheet_link_tag    'application', media: 'all', 'data-turbolinks-track' => true
    

    在注册页面中丢失。令人困惑的是,使用另一页上的按钮可以正常工作。我不明白为什么会发生这种情况(我猜是一些优化恶作剧)但问题现在已经解决了:)

    编辑:它是由 turbolinks 引起的

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多