gpt4 book ai didi

ruby-on-rails - rails 4 asset pipeline assets.rb 重构问题

转载 作者:数据小太阳 更新时间:2023-10-29 07:37:48 26 4
gpt4 key购买 nike

Asset filtered out and will not be served: add Rails.application.config.assets.precompile += %w( home.css ) to config/initializers/assets.rb and restart your server

我正在尝试设置多个布局,以达到不同的 .css.scss 和 .js 设置,一个用于主页,其他用于应用程序的各个部分。

我家的布局是这样的:

doctype html
= render 'layouts/components/view_source_msg'
html
head
title
= browser_title(yield(:title))
= render 'layouts/components/meta'
= render 'layouts/components/favicons'
= stylesheet_link_tag 'home'
= csrf_meta_tags

body[class="#{build_body_class} loading"]

== yield
= render 'layouts/components/analytics'
= javascript_include_tag 'home'

javascript:
$(function(){
$(document).foundation();
view_#{controller.controller_name.downcase}.init();
});

设置初始化器 assets.rb 的错误状态,我将其设置为:

Rails.application.config.assets.precompile += %w( *.css.sass )
Rails.application.config.assets.precompile += %w( *.css.scss )
Rails.application.config.assets.precompile += %w( *.js )
Rails.application.config.assets.precompile += %w( *.js.coffee )
Rails.application.config.assets.precompile += %w( *.js.coffee.erb )

但这行不通...有人能指出我正确的方向吗?谢谢

更新

我能够通过...使它正常工作

Rails.application.config.assets.precompile += %w( home.css )
Rails.application.config.assets.precompile += %w( home.js )

但这似乎有点不对劲。在我的旧 Rails 应用程序中,其他方法会工作得很好......

最佳答案

从 Rails v4 开始,sprockets gem 现在处理 Assets 管道。它会在 app/assets/stylesheetsvendor/assets/stylesheets 文件夹中查找样式表文件,因此如果您要放置 home.csspublic/assets/stylesheets 之类的地方,它不会出现在那里。如果您特别告诉 rails 预编译与该名称匹配的任何 Assets ,就像您在修复中所做的那样,它会这样做,然后输出编译后的样式表并知道要引用它,这就是它起作用的原因。然而,这不是首选约定。 Ruby API for Coding Links to Assets

关于ruby-on-rails - rails 4 asset pipeline assets.rb 重构问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24857404/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com