gpt4 book ai didi

ruby-on-rails - 自定义主题的 Rails Assets 管道

转载 作者:行者123 更新时间:2023-12-05 01:13:36 25 4
gpt4 key购买 nike

我的 rails 应用程序有一个自定义主题。这个主题由 8 个结构复杂的文件夹组成(子文件夹,很多文件)。这些文件夹之一是 bootstrap,它由 css、js 和 img 子文件夹组成。其他一些文件夹和子文件夹也包含 css、js 和 imgages。

如何使用 Assets 管道来预编译这些文件以及如何从代码访问它们?

最佳答案

我最近购买了一个大型 HTML5 主题并执行了将其放入我的 rails 项目并使用 Assets 管道的工作。有一些批量查找/替换我必须做才能让它对图像 URL 满意。这是我使用的整体方法:

  • 将所有提供的“图像”文件和目录放在
    /供应商/ Assets /图像。
  • 将所有提供的样式表放在
    /vendor/assets/stylesheets
  • 将所有提供的 javascript 放在下面
    /vendor/assets/javascripts

  • 使用上述方法,所有相对路径都应按照主题供应商的要求进行维护。例如,我的主题供应商在 'img' 目录下有所有图像,所以我简单地复制了那个目录,所以它是/vendor/assets/images/img/...

    现在,我们需要让我们的 application.css 和 application.js 文件正确地拉入它需要的文件:
  • 在/app/assets/javascripts/application.js 中添加 require 行以添加您的主题供应商说您需要的所有 javascript
  • 在/app/assets/stylesheets/application.css 中添加 require 行来添加所有需要的样式表

  • 现在棘手的部分取决于您的 javascript 和样式表是否包含其他项目。对于任何已经这样做的文件,我建议您将它们重命名为 .erb(在文件名中添加一个 .erb),这样您就可以使用 Rails 助手,例如 Assets 路径图像路径 :
    .i24_arrow-180{ background-image: url(<%= asset_path 'img/icons/packs/fugue/24x24/arrow-180.png' %>); }

    或者,在您的 javascript 中:
    '<%= asset_path('js/mylibs/charts/jquery.flot.orderBars') %>':

    一旦您修复了任何图像路径,您应该准备好使用新主题,它将与 Assets 管道一起使用!

    警告:我花了几个小时调试一个主题的 Assets 编译问题,结果发现这是因为其中一个图像的文件名中有一个括号,而 sass 编译器对此感到厌烦!

    关于ruby-on-rails - 自定义主题的 Rails Assets 管道,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14057501/

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