因此,将 Rails 应用程序迁移到 3.1 并遇到与新 Assets 管道功能相关的各种令人头疼的问题。最大的问题是如何正确地将从 themeforest.net 购买的主题组织到应用程序中,以便在开发、测试和生产中正常工作。
主题,就像我假设的大多数一样,包含相互关联的 javascript、css 和图像。在我的 Rails 3.0 应用程序中,它的结构如下:
public
my_theme
css
images
javascript
鉴于新 Assets 管道,在 3.1 中组织主题的最佳方式是什么?
由于各个目录(css、图像、javascript)中的文件相互引用,我希望有一种方法可以将其移植到 3.1 应用程序中,而无需对这些主题的实际内容进行任何修改文件。
谢谢
最佳答案
我是这样做的:
- 创建一个 vendor/my_theme 目录
- 将主题目录(css、js、images、themes)复制到vendor/my_theme
- 创建了一个 config/initializers/my_theme.rb 文件,内容为:
HashtagifyPro::Application.configure do config.assets.paths << Rails.root.join("vendor", "my_theme") end
- 像这样更改 html 中的 css 和 js 链接:从 ./css/all.css 到/assets/css/all.css,和 ./js/my.js 到/assets/js/my.js
就是这样!
顺便说一下,如果你不想用 sprockets 预处理你的主题 Assets ,那么将你的主题留在 public/目录中是完全合法的
关于ruby-on-rails-3.1 - 如何将购买的 "theme"相关javascript、css 和image 文件组织成Rails 3.1 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8073192/