Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Rails和Compass-每个视图/控制器创建不同CSS的正确方法是什么?_Css_Ruby On Rails_Ruby_Compass Sass - Fatal编程技术网

Rails和Compass-每个视图/控制器创建不同CSS的正确方法是什么?

Rails和Compass-每个视图/控制器创建不同CSS的正确方法是什么?,css,ruby-on-rails,ruby,compass-sass,Css,Ruby On Rails,Ruby,Compass Sass,我正在使用rails 当使用不带指南针的rails时,rails每个控制器都有一个css,其中包含仅与该控制器中的视图相关的内容 我无法使用compass获得相同的行为,这导致每个控制器都有一个大的单片文件,而不是单独的文件 解决这个问题的推荐方法是什么?Rails(从3.1开始)确实会为每个控制器创建一个css文件,但这只是为了实际的代码分离,所有代码资产都会被编译成每个格式(.css、.js..)的一个主文件,这是90%的最佳实践 如果您想在SCSS或SASS代码中使用这种方法,只需将文件扩

我正在使用rails

当使用不带指南针的rails时,rails每个控制器都有一个css,其中包含仅与该控制器中的视图相关的内容

我无法使用compass获得相同的行为,这导致每个控制器都有一个大的单片文件,而不是单独的文件

解决这个问题的推荐方法是什么?

Rails(从3.1开始)确实会为每个控制器创建一个css文件,但这只是为了实际的代码分离,所有代码资产都会被编译成每个格式(.css、.js..)的一个主文件,这是90%的最佳实践

如果您想在SCSS或SASS代码中使用这种方法,只需将文件扩展名更改为.css.SCSS或.css.SASS(即:mycontroller.css.SCSS)


如果您想将每个控制器的编译文件分开(您可能不需要它,因此我建议您在执行之前了解资产管道),那么您必须自己实现自定义行为。看看这里

指南针我想你是说“无礼”?不管怎么说,原因是什么?通常,在初始加载时只发送一次CSS/JS文件是有用的,因为浏览器在后续页面上没有任何额外的下载内容。但是如果你需要它,这里有一个关于JS的解释。。。适应CSS应该不难:指南针我指的是指南针()。谢谢你的推荐。