我在线购买了一个漂亮的 Twitter Bootstrap 它们,它将为我的 Rails 3.2.8 应用程序增添趣味。该软件包包含以下目录:
/css
/img
/js
当然,这些文件中会有相互关联的链接。是否有将此类东西集成到资产管道中的标准方法,或者将其公开仍然是一种标准做法?
我在线购买了一个漂亮的 Twitter Bootstrap 它们,它将为我的 Rails 3.2.8 应用程序增添趣味。该软件包包含以下目录:
/css
/img
/js
当然,这些文件中会有相互关联的链接。是否有将此类东西集成到资产管道中的标准方法,或者将其公开仍然是一种标准做法?
您将需要使用资产管道。一切都在朝着那个方向发展,而且实际上并没有变得更难(除非是这样)。您的文件将进入/app/assets/
目录。
对于 css,您应该可以将其直接放入app/assets/stylesheets/
中,只要确保首先包含引导程序即可。有几个 gem 可以很容易地包含引导程序的文件。我使用bootstrap-sass,但您也可以尝试twitter-bootstrap-rails(取决于您是否需要 sass 支持)。对于任何一个,请查看我链接到的自述文件,因为它们包含一些您想了解的关于每个 gem 的有用细节。
对于 javascript,它应该是同样的事情。在您的 application.js 文件中,确保之前 //= require_tree .
包含引导程序,以防主题添加任何自定义 javascript。我之前列出的两个 gem 还包括 bootstrap 的 javascript 文件。您可以阅读他们的文档以查看详细信息(这两种宝石几乎与正常情况完全相同)。
就图像而言,将它们放在app/assets/images/
目录中,您必须稍微更改样式表才能使其正常工作。当在样式表中声明图像时,例如background: url('./images/bg.jpg');
,您需要使用image_path
帮助器,所以它看起来像background: url(image_path('bg.jpg'));
. 请注意,我只包含了图像的名称。资产管道会自动为您解析到正确的路径。
如果主题包含任何自定义字体,您将执行与图像相同的操作,除了asset_path
在 @font-face 声明中使用这样的帮助器:
url(asset-path('museo700.ttf', font));
您还可以使用特定于类型的帮助器,例如font-path
,image-path
等。asset-path
声明类型或特定于类型的帮助器都可以使用,只需与您使用的帮助器保持一致,以免产生混淆。
您可以将自定义字体放在类似app/assets/fonts/
. 资产管道会自动找到它们,因为它们位于资产目录中。