Tag: 资产管道

Rails 4资产管道不会使用asset_path引用其他资产来覆盖资产

因此,资产管道摘要存在一个小问题,即我们有许多HTML模板作为资产(对于AngularJS),我们使用asset_path帮助程序在Javascript文件中引用这些资产的路径。 不幸的是,由于资产预编译步骤(和Heroku)检查更改的方式,对模板进行更改不会导致重新编译javascript文件。 所以基本上在像application.coffee.erb这样的文件中我们可能有类似的东西: url = ” 当我们运行rake assets:precompile会变成/assets/views/template-1023911231.html ,它具有摘要值但是如果template.html.slim被更改,摘要将会改变,但是因为application.coffee.erb没有从根本上改变了它没有重新编译,并继续指向旧的摘要。 思考? 解决方案? 这实际上对我来说似乎是个错误。 更新 目前我最好的解决方案是在application.rb中更新资产版本,如果我们需要更改我们的HTML模板资产但没有更改javascript。

在Heroku Cedar上为Rails中的资产设置自定义标头

我有一个使用Rails 4.0和资产管道的雪松应用程序。 我想为资产管道中的所有资产设置自定义标头。 如何才能做到这一点?

为什么stylesheet_link_tag没有链接到生产中的/ assets?

我刚刚为新的Rails 3.1应用程序进行了第一次部署,但资产似乎无法正常工作。 我在部署时预编译了所有内容,并且它在预期的public/assets 。 但是,我的布局中的stylesheet_link_tag “application”的输出有一个指向/stylesheets/application.css的href。 这显然不起作用。 奇怪的是,在开发模式下,一切似乎都很好,它像预期的那样链接到/assets/application.css 。 我将config/application.rb和config/environments/production.rb文件与我们在资产管道上的另一个应用程序进行了比较,相关设置似乎相同。 我应该在哪里看?

渲染部分资产

我正在使用Ruby on Rails 3.1,我想知道如何在javascript资产中渲染部分内容。 我的目标是: # in /app/assets/javascript/cart.js.coffee.erb $(‘a.add_sth’).click -> $(‘.random_container’).append(”) 这会导致NoMethodError: undefined method `render’ for #<#:0x007fc5474cd470> 如果我写而不是它工作正常,顺便说一句。 我认为问题是资产管道独立于默认的ActionView,这就是为什么render()在那里是未知的。 无论如何,有没有办法让部分内容呈现?

如何在Rails 3.1(gem + Asset Pipeline)中配置CKEditor

我已经在我的Rails 3.1应用程序上成功配置了https://github.com/galetahub/ckeditor的ckeditor gem。 我现在的问题是我无法弄清楚如何配置CKEditor。 在启用资产管道的Rails 3.1应用程序中,根据自述文件使用的文件根本不存在。

Rails asset pipleline:编译为多个样式表

由于特定的设置,我想将编译的样式表拆分为两个文件。 这是因为可以解析CSS的Java应用程序需要CSS(的一部分),但是它有点bug并且无法处理某些css-(hack)-syntax。 因为我无法修改这个Java应用程序,所以我想只提供它需要的CSS,并且我可以确保它是正确的。 因此,通常资产管道只生成一个’/assets/application-[..].css’文件。 它会让它根据我做的文件选择生成’/assets/custom-[..].css’。 这仍然可以预先编译。 有没有办法做到这一点? 虽然我明白这不是理想的设置..

sass-rails资产管道:错误地生成图像路径; `url(/images/blah.png)`而不是`url(/assets/blah.png)`

在第2.2.2节“CSS和Sass”中 ,我被告知将image-url(‘delete.png’)放入我的sass中。 所以我有。 但是,它正在生成CSS background-image: url(/images/delete.png) 而不是我告诉他应该生成的东西,正确而明显的东西, background-image: url(/assets/delete.png) 什么。 哎呀。 我花了很多天试图弄清楚这是从哪里来的。 以下是导致此行为的相关设置的要点 。 以下是我们的代码库早期版本中相同文件的要点 (在我们实现资产管道之后,它实际上工作了大约一周之后才出现这种令人沮丧的行为)。 你能发现差异吗? 您能想到的任何其他文件可能导致此问题? 注意 我们故意使用较旧版本的sass-rails因为较新的版本导致Stack level too deep! 预编译时出错。 我们正在使用指南针。 两次针对变通办法的黑客尝试 因为实际上对资产管道进行故障排除有点糟糕。 1:将图像放入/图像 我试图将所有图像移动到public/images并将其添加为加载路径。 这在dev中工作(图像可以在/assets或/images ),但是生产的预编译会将指纹图像放在/assets (obvs)中,所以当sass-rails放入url(/imagse/delete-120398471029384102364.png) ,它无法找到。 2:使/ public / images成为/ public / assets的符号链接 这可能适用于生产,但在开发中,/ assets文件夹不存在,因此url(/images/delete.png)指令会导致图像不均匀。

如何使用Rails资产管道进行每页javascript

我理解,出于性能原因,最好让资产管道连接并缩小我的所有javascript,并将每个页面请求发送到整个批次。 这很公平 但是,我的一堆javascript就像将特定行为绑定到特定页面元素之类的东西 – 比如 $(‘button’).click(function(e) { $(‘input.sel’).val(this.name); } 如果我知道这个代码只在那个页面上执行,我会感觉更舒服 – 而不是在其他页面上可能巧合地使用相同ID或匹配相同选择器的元素人们如何处理这个? 我宁愿不把所有这些东西都放在元素内联中,只是因为当它变得超过两行长时,保持javascript正确缩进到.html.erb文件中是比它需要更多的工作

将文件夹添加到资产管道路径?

我们有一个rails应用程序,我最近从Rails 3.0更新到Rails 3.2。 这个应用服务多个客户。 要为每个客户端自定义它,我们有目录app/themes 。 在有子模块。 每个子模块都包含locales/en.yml , views/layouts , views/controller_name等内容。我们使用prepend_view_path添加主题视图,并使用I18n.load_path添加到语言环境中。 我们正在考虑使用资产管道,以便我们可以将所有客户端材料混合在公共目录之外,并将其保存在每个主题中。 有没有办法我可以动态告诉rails加载我想要的主题/主题名称/资产文件夹? 我们使用设置逻辑来设置哪个主题是活动的。 因此,如果我将主题设置为“google”,则ApplicationController会从路径中加载文件: app/themes/google/locales/*.yml app/themes/google/views 我希望能够做的是拥有清单文件, app/themes/google/assets/stylesheets/application.css 可以轻松访问布局,就像在app/views/layouts文件中一样: = stylesheet_link_tag “application” 有没有办法可以做到这一点? 或者我们是否需要手动将资产移动到实际资产目录中?

Ruby on Rails:heroku运行rake资产:预编译

请帮助我理解heroku run rake assets:precompile究竟是什么。 自从我开始在rails上使用ruby之后,我总是在推送到github和heroku之前运行这三个命令: bundle exec rake assets:precompile RAILS_ENV=production bundle exec rake assets:precompile 在我推送到heroku之后,我会跑: heroku run rake assets:precompile 但是,当我在上次推送到heroku后尝试运行它时,我在不同的文件上遇到了一堆相同的错误。 例如: Warning. Error encountered while saving cache … can’t dump anonymous class … 为了看看我能解决这个问题,我跑了 heroku run rake assets:clean然后heroku run rake assets:precompile再次heroku run rake assets:precompile 。 问题是一切都运转良好,但我觉得如果有这些警告/错误。 请帮我理解。 谢谢!