如何防止Rails加载资产?



一个可以理解的奇怪问题。我正在将一个项目移植到RoR,以便使用它的一些组件。资产管理不在其中。

我在我的页面中结束了这样的东西:

<!DOCTYPE html>
<html>
<head>
  <title>Opera</title>
  <link data-turbolinks-track="true" href="/assets/application.css?body=1" media="all" rel="stylesheet" />
<link data-turbolinks-track="true" href="/assets/main.css?body=1" media="all" rel="stylesheet" />
  <script data-turbolinks-track="true" src="/assets/jquery.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/jquery_ujs.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/turbolinks.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/main.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets/application.js?body=1"></script>
  <meta content="authenticity_token" name="csrf-param" />
<meta content="5YFRzv/wICYBms8cregzthpFqCr5gf3pQknNpLOOeEg=" name="csrf-token" />
</head>
<body>
    <!-- My scripts and stylesheets below -->

我该怎么做才能使页面不加载自己的脚本和样式表?

此外,如果我在.erb模板中链接样式表,它们都在<body>标记下结束。Rails样式表/脚本帮助程序假定您的内容位于/asset目录中。

如果我把我的脚本和样式表在/public我如何得到Rails链接我的脚本在<head> ?

谢谢!

默认脚本和样式表被加载是因为app/views/layouts/application.html.erb

中的以下两行
<%= stylesheet_link_tag    "application", media: "all", "data-turbolinks-track" => true %>
<%= javascript_include_tag "application", "data-turbolinks-track" => true %>

Rails使用文件app/views/layouts/application.html.erb中定义的布局作为呈现任何视图的默认值。在渲染时,视图进入application.html.erb的主体部分。

你可以删除不需要的js从app/assets/javascripts/application.js文件和css从app/assets/stylesheets/application.css文件。你也可以在这两个文件中指定你自己的资产。

我不确定/public水平。Rails管道资源可以放置在应用程序中的三个位置之一:app/assets, lib/assetsvendor/assets

阅读更多详细信息:Rails资产管道

相关内容

  • 没有找到相关文章

最新更新