Rails:是什么让每个 css 文件链接到所有 .erb 文件
Rails: What makes every css file linked to all .erb files
我注意到我的所有 css 文件都 linked 到 erb 视图文件。跟asset pipeline或者prockets有关系吗rails?
我想知道如何禁用该功能并使之仅将某些 css 文件 link 编辑到特定的 erb 文件。
这里是 github link 项目:https://github.com/PabiGamito/pandora
谢谢。
如果您在说 "erb files," 时指的是 "views",那么您可能想看看 app/views/layouts/application.html.erb
。在第 5 行,你有这个:
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %>
这就是每个页面上包含样式表的内容。这将创建一个 link 标签,application.css
文件是目标(如果你进入你的资产,你应该找到一个 application.css
)。
为了仅在某些页面上包含某些样式表,您将不得不进行一系列更改。
首先,您必须在 link 标签下方添加一个 content_for
。这允许您在另一个视图中定义要在该点添加的内容。您可能希望在样式表 link 下添加一行,其中包含:
<%= content_for :stylesheets if content_for?(:stylesheets) %>
它的作用是添加来自 :stylesheets
内容的内容(如果已定义)。
您必须修改 application.css.scss
文件。在第13行,你有require_tree .
,它需要所有个文件在app/assets/stylesheets
目录下,这是不是你要的想。您必须删除它,并手动要求每个要包含在 application.css
文件中的文件。
您必须创建一个新文件,命名为(例如)admin.css(.scss)
(.scss
是可选的)。在该文件中,您可以放置任何您想要的样式。由于您从应用程序 css 文件中删除了 require_tree .
,因此除非您为它添加 require
指令(尽管您不想这样做),否则它不会被包括在内。
在任何你想要的视图中,你必须放置以下内容:
<% content_for :stylesheets do %>
<%= stylesheet_link_tag 'admin', media: 'all', 'data-turbolinks-track' => true %>
<% end %>
这样就可以了。
我注意到我的所有 css 文件都 linked 到 erb 视图文件。跟asset pipeline或者prockets有关系吗rails?
我想知道如何禁用该功能并使之仅将某些 css 文件 link 编辑到特定的 erb 文件。
这里是 github link 项目:https://github.com/PabiGamito/pandora
谢谢。
如果您在说 "erb files," 时指的是 "views",那么您可能想看看 app/views/layouts/application.html.erb
。在第 5 行,你有这个:
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %>
这就是每个页面上包含样式表的内容。这将创建一个 link 标签,application.css
文件是目标(如果你进入你的资产,你应该找到一个 application.css
)。
为了仅在某些页面上包含某些样式表,您将不得不进行一系列更改。
首先,您必须在 link 标签下方添加一个
content_for
。这允许您在另一个视图中定义要在该点添加的内容。您可能希望在样式表 link 下添加一行,其中包含:<%= content_for :stylesheets if content_for?(:stylesheets) %>
它的作用是添加来自
:stylesheets
内容的内容(如果已定义)。您必须修改
application.css.scss
文件。在第13行,你有require_tree .
,它需要所有个文件在app/assets/stylesheets
目录下,这是不是你要的想。您必须删除它,并手动要求每个要包含在application.css
文件中的文件。您必须创建一个新文件,命名为(例如)
admin.css(.scss)
(.scss
是可选的)。在该文件中,您可以放置任何您想要的样式。由于您从应用程序 css 文件中删除了require_tree .
,因此除非您为它添加require
指令(尽管您不想这样做),否则它不会被包括在内。在任何你想要的视图中,你必须放置以下内容:
<% content_for :stylesheets do %> <%= stylesheet_link_tag 'admin', media: 'all', 'data-turbolinks-track' => true %> <% end %>
这样就可以了。