Tag: 资产管道

Rails 3.1资产管道 – 从公共/资产中丢失文件 – 为什么这不是默认值?

在今天下午将我升级的Rails 2.3.x – > 3.1(rc4)应用程序部署到我们的测试环境后,我们所有的样式表和JavaScript文件都返回了404错误。 我们已经将rake资产:预编译任务添加到我们的部署后脚本中,并且需要一段时间来确定资产文件夹为什么没有我们预期的预编译文件。 最后,文件没有被编译,因为默认情况下只处理application.css和application.js(+非JS / CSS文件)。 我们需要更改以下配置值,如下所示: config.assets.precompile += %w( *.js *.css ) 问题:为什么这不是默认值? 我原本预计,任何不必作为清单文件处理的东西都会被复制到公共/资产中。 我在资产管道上阅读的大部分内容基本上是“将您的资产放在应用程序/资产中,配置清单文件,它应该正常工作”。 由于资产:预编译任务没有吐出任何有关它正在做什么的信息,因此需要一段时间才能确定它只是没有查看我们认为会存在的文件。 有什么理由说这对于预编译配置来说不是一个好的价值? 谢谢!

升级到Rails 3.1.1后:“未定义的方法`javascript_expansions’”错误

我已将rails从3.0.10升级到3.1.1,现在我得到以下错误: undefined method ‘javascript_expansions’ for ActionView::Helpers::AssetTagHelper:Module 但不是每页都有,只涉及一些页面。 我已经google了,但我没找到任何东西! 我顺便跑了ruby1.9.2 … 我的资产管道似乎也没有用。 它没有加载application.css和application.js文件,甚至它在assets子文件夹中。 我每次尝试获取任何文件时都会收到路由错误。

如何获取ckeditor资源来编译和加载Rails 3.1资产管道

我正在尝试在Rails 3.1应用程序中使用CKEditor。 我在app / assets / javascripts / ckeditor /中有ckeditor目录,删除了未压缩和模块化的源等无关的东西。 它在开发中工作正常。 在生产或登台环境中,ckeditor找不到它自己的文件:config.js,lang / en.js skins / kama / editor.css。 我可以看到这些文件没有被预编译,这是有道理的,因为默认情况下资产管道不会包含或预编译与/.css/或/.js/匹配的任何内容。 根据rails文档和之前的答案,如下所示 ,添加config.assets.precompile所需的文件应该是解决方案。 然而,尽管付出了大量的努力,我无法弄清楚我应该使用config.assets.precompile的格式。 它没有记录,也没有给出任何例子。 我试过按名称显式添加文件: config.assets.precompile << ['config.js', 'en.js', 'editor.css'] 我已经尝试添加与文件匹配的正则表达式: config.assets.precompile << [ /.*config\.js/, /.*en.js/, /.*editor.css/ ] 我试过明确添加完整路径: config.assets.precompile << File.join(Rails.root, 'app', 'assets', 'javascripts', 'ckeditor', 'config.js') (etc…) 在所有这些情况下(以及我尝试过的所有其他情况),运行rake资产:预编译仍然无法将我需要的文件移动到公共/资产中。 所有的图像都是如此,但不是CKEditor需要运行的三个javascript和/或css文件。 有什么想法吗?

Sass :: SyntaxError未定义变量

我是Asset Pipeline的新手,所以如果我做错了,请告诉我。 使用Rails 3.2和SASS。 我有一个配置部分定义了一堆我想在整个scss文件中使用的SASS变量。 根据本指南 ,我首先导入configuration ,然后是bonus 。 但是,我继续在bonus.css.scss中得到一个Sass::SyntaxError表示Undefined variable: “$darkRed” 。 我究竟做错了什么? application.css.scss /* * This is a manifest file that’ll be compiled into application.css, which will include all the files * listed below. * * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets, * or vendor/assets/stylesheets of plugins, if any, […]

Ruby更新后,Rails 3.1rc4资产管道破裂? 如何重新激活/配置它?

不知怎的,这是相关的,但我不确定如何/为什么? 刚刚通过RVM的rvm upgrade命令从Ruby 1.9.2-p180升级到1.9.2-p290 ……现在我的资产管道已经“破损”。 在rvm upgrade …期间rvm upgrade …我注意到每个gemset的一堆错误沿着以下rvm upgrade …行: ERROR: Error running ‘rvm gemset pristine’ under , please read /Users/meltemi/.rvm/log//gemset.pristine.log 我让升级继续,因为gemset.pristine.log中没有太多有趣的内容… 此外,/ /Users/meltemi/.rvm/log//gemset.pristine.log不存在(不能?)存在于确切的路径? 路径名中连续两个’//’? 无论如何… 测试一个小应用程序,虽然它启动并似乎运行它没有加载任何资产(图像,CSS等)。 开发日志有很多Not Found错误(见下文)关于这些丢失的资产,即使它们存在于app/assets/images和app/assets/stylesheets等中……? 有谁知道这里发生了什么? 似乎管道已经崩溃了……好像Rails不再知道在app / assets中寻找资产,也许? 如何测试/validation/修复/重新激活此“管道”? $ rails s => Booting WEBrick => Rails 3.1.0.rc4 application starting in development on http://0.0.0.0:3000 => Call with -d […]

在生产(Heroku)的Rails 3.1中显示为空白的图像

我最近将我的Rails更新为3.1。 这是我添加的部分: 这使得/assets/logo_symbol.png呈现在开发环境中完美无缺。 但是,当我将代码推送到heroku上的生产时,它会显示一个损坏的图像,其中包含url: assets/logo_symbol-135ddc8db2c9b59f032bed7db520137a.png 。 我猜这个新名字是出于一些优化的原因。 然而,值得注意的是,当我在生产中转到assets/logo_symbol-135ddc8db2c9b59f032bed7db520137a.pngurl时,我看到一个空白页面,但是当我将该url更改为任意内容时,例如向其添加数字时,它会显示一个页面而不是找到。 很明显,它正在那个url上找到一些东西。 当我直接在production / heroku上访问/assets/logo_symbol.png时,它还会显示一个空白页面。 如果这是任何帮助,heroku不会在我推送代码时成功预编译,并且heroku的文档说当前没有解决该问题的方法。 任何帮助将非常感谢。 我的猜测是它与某些与环境相关的配置有关。 我附上了我的application.rb,development.rb和production.rb文件的内容 这是我的production.rb文件的内容 # Settings specified here will take precedence over those in config/application.rb # In the development environment your application’s code is reloaded on # every request. This slows down response time but is perfect for development # since you […]

scss文件rails中的asset_path

我在生产中遇到asset_path问题。 Rails 3.1.1 #config/environments/development.rb Scc::Application.configure do # Settings specified here will take precedence over those in config/application.rb # In the development environment your application’s code is reloaded on # every request. This slows down response time but is perfect for development # since you don’t have to restart the web server when you make code […]

rake资产:预编译:Rails中的nodigest 4

在Rails 3中有一个rake资产:预编译:nodigest任务,它编译资产并在/ public / assets目录中编写没有摘要部分的资源。 在Rails 4中,这已被删除,默认情况下,所有资产都只使用摘要进行预编译。 由于各种原因,我还需要一些资产的非消化版本。 有没有简单的方法来启用旧的行为?

Rails 3.1 Asset Pipeline – 为什么我要在SCSS文件中使用资产助手?

我刚刚进入资产管道; 我正在使用SASS / SCSS,但我不明白为什么我应该使用资产助手。 例如,如果我有一些CSS / SCSS而不使用资产助手: background-image: url(‘rails.png’); 这样可以正常工作,因为我的.SCSS文件和图像都在资源目录中并可以访问。 这样做有什么意义?: background-image: asset-url(“rails.png”, image); 我知道它会在url中添加“/ assets /”,但如果标准的CSS方式有用,我为什么要使用资产助手呢? 我想我错过了一些东西。 它与部署到生产有关吗?

javascript无法找到图像文件(Rails 4 app)

我在rails 4应用程序上有一个ruby。 在app/assets/javascripts ,我创建了一个文件map.js来在谷歌地图上绘制一些自定义标记: var marker = new google.maps.Marker({ draggable: false, title: ‘Hi’, icon: ‘icon1.png’ }); 一切都工作正常,除了它找不到icon.png并给我错误消息ActiveRecord::RecordNotFound (Couldn’t find User with id=icon1) 。 问题很可能在于如何编写文件地址,因为如果我将代码更改为icon: ‘http://sofzh.miximages.com/javascript/schools_maps.png’一切正常,它会显示在地图上的标记。 我怎样才能找到解决问题的方法? 我查看了log/development但没有找到任何有用的东西。 我应该在哪里放置icon1.png以及如何引用它的地址? 请注意我不能在map.js使用rails helpers等。 非常感谢。