rails 5 中布局不同的 redirect_to 未加载资产
Asset not loaded with redirect_to with different layout in rails 5
目前,我有 2 种布局,比如 'devise'(对于未验证的页面)和 'application'(对于登录后的所有页面)。出于某种原因,在执行 redirect_to root_url
后登录后,仪表板已加载,但未加载任何 CSS 和 jQuery。刷新页面后,一切正常。我不确定是什么原因造成的。任何帮助,将不胜感激。提前致谢。
这是我的文件布局。
1. devise.html.erb
<head>
<title></title>
<%= csrf_meta_tags %>
<%= csp_meta_tag %>
<!-- Main css styles -->
<%= stylesheet_link_tag 'devise' %>
<!-- Main javascript files -->
<%= javascript_include_tag 'devise' %>
</head>
2。 application.html.erb
<head>
<title></title>
<%= csrf_meta_tags %>
<%= csp_meta_tag %>
<!-- <meta name="viewport" content="width=device-width, initial-scale=1.0"> -->
<!-- Main css styles -->
<%= stylesheet_link_tag 'application'%>
<%= javascript_include_tag 'application' %>
</head>
当您的 JavaScript 和 CSS 在不同模板中保持一致时,Turbolinks 效果最佳。如果您必须在布局之间显着更改脚本和样式,我建议您将 data-turbolinks-track="reload"
添加到资产标签中:
<head>
<title></title>
<%= csrf_meta_tags %>
<%= csp_meta_tag %>
<!-- Main css styles -->
<%= stylesheet_link_tag 'devise', 'data-turbolinks-track': 'reload' %>
<!-- Main javascript files -->
<%= javascript_include_tag 'devise', 'data-turbolinks-track': 'reload' %>
</head>
<head>
<title></title>
<%= csrf_meta_tags %>
<%= csp_meta_tag %>
<!-- <meta name="viewport" content="width=device-width, initial-scale=1.0"> -->
<!-- Main css styles -->
<%= stylesheet_link_tag 'application', 'data-turbolinks-track': 'reload' %>
<%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
</head>
当 Turbolinks 注意到新页面与前一个页面之间存在差异时,它将重新加载该页面。这对于确保用户下载最近部署的资产也很重要。
目前,我有 2 种布局,比如 'devise'(对于未验证的页面)和 'application'(对于登录后的所有页面)。出于某种原因,在执行 redirect_to root_url
后登录后,仪表板已加载,但未加载任何 CSS 和 jQuery。刷新页面后,一切正常。我不确定是什么原因造成的。任何帮助,将不胜感激。提前致谢。
这是我的文件布局。
1. devise.html.erb
<head>
<title></title>
<%= csrf_meta_tags %>
<%= csp_meta_tag %>
<!-- Main css styles -->
<%= stylesheet_link_tag 'devise' %>
<!-- Main javascript files -->
<%= javascript_include_tag 'devise' %>
</head>
2。 application.html.erb
<head>
<title></title>
<%= csrf_meta_tags %>
<%= csp_meta_tag %>
<!-- <meta name="viewport" content="width=device-width, initial-scale=1.0"> -->
<!-- Main css styles -->
<%= stylesheet_link_tag 'application'%>
<%= javascript_include_tag 'application' %>
</head>
当您的 JavaScript 和 CSS 在不同模板中保持一致时,Turbolinks 效果最佳。如果您必须在布局之间显着更改脚本和样式,我建议您将 data-turbolinks-track="reload"
添加到资产标签中:
<head>
<title></title>
<%= csrf_meta_tags %>
<%= csp_meta_tag %>
<!-- Main css styles -->
<%= stylesheet_link_tag 'devise', 'data-turbolinks-track': 'reload' %>
<!-- Main javascript files -->
<%= javascript_include_tag 'devise', 'data-turbolinks-track': 'reload' %>
</head>
<head>
<title></title>
<%= csrf_meta_tags %>
<%= csp_meta_tag %>
<!-- <meta name="viewport" content="width=device-width, initial-scale=1.0"> -->
<!-- Main css styles -->
<%= stylesheet_link_tag 'application', 'data-turbolinks-track': 'reload' %>
<%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
</head>
当 Turbolinks 注意到新页面与前一个页面之间存在差异时,它将重新加载该页面。这对于确保用户下载最近部署的资产也很重要。