如何最好地组织 rails 应用中的资产
how best to organize assets in a rails app
随着我在我的应用程序上不断取得进展,我的样式表文件夹很快就被占用了。我已经阅读了关于资产管道的 rails 指南,并在互联网上搜索了一个有信誉的来源,但我仍然对 "rails way" 保持一切整洁感到茫然。
在我尝试自己开发一个系统之前,我希望得到你们的一些建议。
在资产组织方面有没有众所周知的"best practice"?如果没有,什么对您有效?
目前我的设置是这样的:
app/assets/stylesheets >
application.css,应用-RESPONSIVE.css
任何特定于正文、容器、导航栏、页脚的代码
controller.scss,控制器响应
*任何特定于该控制器的代码
lib/assets/stylesheets >
reset.css
在application.css我用
*= require reset
*= require_tree .
*= require_self
但是要获得所有样式 我也一直在想是否最好在 tree 之前设置 self如果需要,作为覆盖主要样式的一种方式?
Is there a well known "best practice" when it comes to asset organization?
资产组织:
在 Rails 中,管道资产可以放置在应用程序内部的三个位置之一:app/assets,lib/资产或供应商/资产。
1) app/assets 用于应用程序拥有的资产,例如自定义图像、JavaScript 文件或样式表。
2) lib/assets 用于您自己的库代码,这些代码并不真正适合应用程序的范围或跨应用程序共享的库。
3) vendor/assets 用于外部实体拥有的资产,例如 JavaScript 插件和 CSS 框架的代码。
Is it better to set self before tree as a means of overriding the main styles if need be?
application.css就是所谓的清单文件。现在,用 tree 切换 self 不会有什么特别的区别,但它会改变它在加载顺序中的位置。考虑一下...
将资产放置在其逻辑位置后,您可以使用清单文件告诉 Rails(通过 Sprockets gem)如何将它们组合成单个文件。这些清单文件包含指令 - 指示 Sprockets 需要哪些文件才能构建单个 CSS 或 JavaScript 文件。
附加信息:
Rails 做的另一件事是当您在终端中 运行 命令 rails generate
时为您生成样式表。创建新控制器时,您会在资产中看到带有控制器名称的样式表。它看起来像 app/assets/stylesheets/newcontroller.css.scss
此外,史蒂夫·克莱因所说的。
希望这对您有所帮助。
更新:
I've tried looking for examples on github but all of the apps I have found have been too simple and havent shown any advanced organization for a large amount of files.
我鼓励您查看 Open Source Rails website. I have looked at some projects there and they seem complex enough for you to be interested enough. Especially, look at the Discourse app。 Discourse 由 Stack Overflow 的联合创始人 Jeff Atwood 共同创立。我想这不言而喻 ;)
随着我在我的应用程序上不断取得进展,我的样式表文件夹很快就被占用了。我已经阅读了关于资产管道的 rails 指南,并在互联网上搜索了一个有信誉的来源,但我仍然对 "rails way" 保持一切整洁感到茫然。
在我尝试自己开发一个系统之前,我希望得到你们的一些建议。
在资产组织方面有没有众所周知的"best practice"?如果没有,什么对您有效?
目前我的设置是这样的:
app/assets/stylesheets >
application.css,应用-RESPONSIVE.css
任何特定于正文、容器、导航栏、页脚的代码
controller.scss,控制器响应
*任何特定于该控制器的代码
lib/assets/stylesheets >
reset.css
在application.css我用
*= require reset
*= require_tree .
*= require_self
但是要获得所有样式 我也一直在想是否最好在 tree 之前设置 self如果需要,作为覆盖主要样式的一种方式?
Is there a well known "best practice" when it comes to asset organization?
资产组织:
在 Rails 中,管道资产可以放置在应用程序内部的三个位置之一:app/assets,lib/资产或供应商/资产。
1) app/assets 用于应用程序拥有的资产,例如自定义图像、JavaScript 文件或样式表。
2) lib/assets 用于您自己的库代码,这些代码并不真正适合应用程序的范围或跨应用程序共享的库。
3) vendor/assets 用于外部实体拥有的资产,例如 JavaScript 插件和 CSS 框架的代码。
Is it better to set self before tree as a means of overriding the main styles if need be?
application.css就是所谓的清单文件。现在,用 tree 切换 self 不会有什么特别的区别,但它会改变它在加载顺序中的位置。考虑一下...
将资产放置在其逻辑位置后,您可以使用清单文件告诉 Rails(通过 Sprockets gem)如何将它们组合成单个文件。这些清单文件包含指令 - 指示 Sprockets 需要哪些文件才能构建单个 CSS 或 JavaScript 文件。
附加信息:
Rails 做的另一件事是当您在终端中 运行 命令 rails generate
时为您生成样式表。创建新控制器时,您会在资产中看到带有控制器名称的样式表。它看起来像 app/assets/stylesheets/newcontroller.css.scss
此外,史蒂夫·克莱因所说的。
希望这对您有所帮助。
更新:
I've tried looking for examples on github but all of the apps I have found have been too simple and havent shown any advanced organization for a large amount of files.
我鼓励您查看 Open Source Rails website. I have looked at some projects there and they seem complex enough for you to be interested enough. Especially, look at the Discourse app。 Discourse 由 Stack Overflow 的联合创始人 Jeff Atwood 共同创立。我想这不言而喻 ;)