微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ruby-on-rails – application.css不被用作资产

编辑4,5和6

8小时,任何更多的想法是受欢迎的:)也许这个bug已经知道和解决了,但是我得到了我在编辑2和3中描述的行为,当你在.css.erb文件中的app / assets / stylesheets :

li {
    background-image: url(<%= asset_path "logo_80px_80px.png" %>);
}

问题部分似乎是asset_path方法调用,但是.css.scss也用以下方式打断它:

li {
    background-image: url(image-path("logo_80px_80px.png"));
}

我的GemFile是:

source 'http://rubygems.org'

gem 'rails','3.1.3'
gem 'pg','0.11.0'
gem 'gravatar_image_tag','1.0.0.pre2'
gem 'will_paginate'
gem 'rake'
gem 'jquery-rails'
gem 'nested_form'
gem 'acts-as-taggable-on'

gem 'sass-rails'
group :assets do
  gem 'coffee-rails','~> 3.1.0'
  gem 'uglifier','>= 1.0.3'
end

group :development do
  gem 'rspec-rails','2.5.0'
  gem 'annotate','2.4.0'
  gem 'faker','0.3.1'
end


group :test do
  gem 'rspec','2.5.0'
  gem 'webrat','0.7.1'
  gem 'factory_girl_rails','1.0'
end

group :production do
  gem 'therubyracer-heroku'
end

我的Gemfile.lock是:

GEM
  remote: http://rubygems.org/
  specs:
    actionmailer (3.1.3)
      actionpack (= 3.1.3)
      mail (~> 2.3.0)
    actionpack (3.1.3)
      activemodel (= 3.1.3)
      activesupport (= 3.1.3)
      builder (~> 3.0.0)
      erubis (~> 2.7.0)
      i18n (~> 0.6)
      rack (~> 1.3.5)
      rack-cache (~> 1.1)
      rack-mount (~> 0.8.2)
      rack-test (~> 0.6.1)
      sprockets (~> 2.0.3)
    activemodel (3.1.3)
      activesupport (= 3.1.3)
      builder (~> 3.0.0)
      i18n (~> 0.6)
    activerecord (3.1.3)
      activemodel (= 3.1.3)
      activesupport (= 3.1.3)
      arel (~> 2.2.1)
      tzinfo (~> 0.3.29)
    activeresource (3.1.3)
      activemodel (= 3.1.3)
      activesupport (= 3.1.3)
    activesupport (3.1.3)
      multi_json (~> 1.0)
    acts-as-taggable-on (2.2.1)
      rails (~> 3.1)
    annotate (2.4.0)
    arel (2.2.1)
    builder (3.0.0)
    coffee-rails (3.1.1)
      coffee-script (>= 2.2.0)
      railties (~> 3.1.0)
    coffee-script (2.2.0)
      coffee-script-source
      execjs
    coffee-script-source (1.1.3)
    diff-lcs (1.1.3)
    erubis (2.7.0)
    execjs (1.2.12)
      multi_json (~> 1.0)
    factory_girl (1.3.3)
    factory_girl_rails (1.0)
      factory_girl (~> 1.3)
      rails (>= 3.0.0.beta4)
    faker (0.3.1)
    gravatar_image_tag (1.0.0.pre2)
    hike (1.2.1)
    i18n (0.6.0)
    jquery-rails (1.0.19)
      railties (~> 3.0)
      thor (~> 0.14)
    json (1.6.3)
    mail (2.3.0)
      i18n (>= 0.4.0)
      mime-types (~> 1.16)
      treetop (~> 1.4.8)
    mime-types (1.17.2)
    multi_json (1.0.4)
    nested_form (0.1.1)
    nokogiri (1.5.0-x86-mingw32)
    pg (0.11.0-x86-mingw32)
    polyglot (0.3.3)
    rack (1.3.5)
    rack-cache (1.1)
      rack (>= 0.4)
    rack-mount (0.8.3)
      rack (>= 1.0.0)
    rack-ssl (1.3.2)
      rack
    rack-test (0.6.1)
      rack (>= 1.0)
    rails (3.1.3)
      actionmailer (= 3.1.3)
      actionpack (= 3.1.3)
      activerecord (= 3.1.3)
      activeresource (= 3.1.3)
      activesupport (= 3.1.3)
      bundler (~> 1.0)
      railties (= 3.1.3)
    railties (3.1.3)
      actionpack (= 3.1.3)
      activesupport (= 3.1.3)
      rack-ssl (~> 1.3.2)
      rake (>= 0.8.7)
      rdoc (~> 3.4)
      thor (~> 0.14.6)
    rake (0.9.2.2)
    rdoc (3.12)
      json (~> 1.4)
    rspec (2.5.0)
      rspec-core (~> 2.5.0)
      rspec-expectations (~> 2.5.0)
      rspec-mocks (~> 2.5.0)
    rspec-core (2.5.2)
    rspec-expectations (2.5.0)
      diff-lcs (~> 1.1.2)
    rspec-mocks (2.5.0)
    rspec-rails (2.5.0)
      actionpack (~> 3.0)
      activesupport (~> 3.0)
      railties (~> 3.0)
      rspec (~> 2.5.0)
    sass (3.1.12)
    sass-rails (3.1.5)
      actionpack (~> 3.1.0)
      railties (~> 3.1.0)
      sass (~> 3.1.10)
      tilt (~> 1.3.2)
    sprockets (2.0.3)
      hike (~> 1.2)
      rack (~> 1.0)
      tilt (~> 1.1,!= 1.3.0)
    therubyracer-heroku (0.8.1.pre3)
    thor (0.14.6)
    tilt (1.3.3)
    treetop (1.4.10)
      polyglot
      polyglot (>= 0.3.1)
    tzinfo (0.3.31)
    uglifier (1.2.0)
      execjs (>= 0.3.0)
      multi_json (>= 1.0.2)
    webrat (0.7.1)
      nokogiri (>= 1.2.0)
      rack (>= 1.0)
      rack-test (>= 0.5.3)
    will_paginate (3.0.2)

PLATFORMS
  x86-mingw32

DEPENDENCIES
  acts-as-taggable-on
  annotate (= 2.4.0)
  coffee-rails (~> 3.1.0)
  factory_girl_rails (= 1.0)
  faker (= 0.3.1)
  gravatar_image_tag (= 1.0.0.pre2)
  jquery-rails
  nested_form
  pg (= 0.11.0)
  rails (= 3.1.3)
  rake
  rspec (= 2.5.0)
  rspec-rails (= 2.5.0)
  sass-rails
  therubyracer-heroku
  uglifier (>= 1.0.3)
  webrat (= 0.7.1)
  will_paginate

application.rb内容

require File.expand_path('../boot',__FILE__)

require 'rails/all'


if defined?(Bundler)
  Bundler.require(*Rails.groups(:assets => %w(development test)))
end

module AjpApp
  class Application < Rails::Application
    config.encoding = "utf-8"
    config.filter_parameters += [:password]
    config.assets.enabled = true
    config.assets.version = '1.0'
  end
end

config / environments / production.rb内容

AjpApp::Application.configure do
  config.cache_classes = true
  config.consider_all_requests_local       = false
  config.action_controller.perform_caching = true
  config.serve_static_assets = false
  config.assets.compress = true
  config.assets.compile = true
  config.assets.digest = true
  config.i18n.fallbacks = true
  config.active_support.deprecation = :notify
end

— —存档

原始帖子

在生产模式下,我有一个Rails 3.1应用程序正在为application.css文件提供服务. After having some unrelated problems我发现大约precompiling the assets使用:

bundle exec rake assets:precompile RAILS_ENV=production

我的application.css文件,预编译生成:’application-79d6fafe46c10758d8f5a921f1e55ecd.css’,但是现在不存在,尽管存在于公共/资产文件夹. application.js文件正在运行(作为应用程序-936deba94d6308ab9bebe4e30a93959.js).另外我注意到这个问题首先出现在我创建一个.css.erb文件,如precompilation文章建议.

对我试图做什么的任何想法?我将尝试撤消.css.erb文件,再次运行预编译,看看我是否收到我的application.css文件.

编辑1

问题不是将.css文件更改为.css.erb.而erb工作正常.当使用asset_path函数时,似乎出现了问题,例如:

.button_one {
    background-image: url(<%= asset_path "activities/text_editor_toolbar.png" %>);
}

这样做可以给出正确的字符串,例如:assets / activities / text_editor_toolbar.png“,它显示在编译过的应用程序(散列).css文件中,该文件在开发中提供但不是生产模式,这是非常奇怪的: @

编辑2
好的,这只是更好,但是更懦弱.看来如果我在生产模式下运行一次,它会失败.在开发中再次运行,然后再次在生产中和it’ll spend ages and launch the ‘Microsoft Console Based Script Host’ just like it’s precompiling the assets,从输出看来,它在做,最后渲染页面和服务的应用程序(哈希).css成功:

C:\documents\ror\ajp_app>rails s -e production
=> Booting WEBrick
=> Rails 3.1.3 application starting in production on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2011-12-19 23:59:12] INFO  WEBrick 1.3.1
[2011-12-19 23:59:12] INFO  ruby 1.9.2 (2011-07-09) [i386-mingw32]
[2011-12-19 23:59:12] INFO  WEBrick::HTTPServer#start: pid=4052 port=3000
cache: [GET /] miss


Started GET "/" for 127.0.0.1 at 2011-12-19 23:59:26 +0000
  Processing by PagesController#home as HTML
Rendered pages/home.html.erb within layouts/application (85.0ms)
Rendered layouts/_header.html.erb (2.0ms)
Rendered layouts/_footer.html.erb (1.0ms)
Completed 200 OK in 393ms (Views: 382.0ms | ActiveRecord: 10.0ms)
cache: [GET /assets/application-a05ca896e645eacb50266c7866d18a0f.css] miss


Started GET "/assets/application-a05ca896e645eacb50266c7866d18a0f.css" for 127.0.0.1 at 2011-12-19 23:59:27 +0000
Nonexistent asset application-a05ca896e645eacb50266c7866d18a0f.css @ a05ca896e645eacb50266c7866d18a0f
Served asset /application-a05ca896e645eacb50266c7866d18a0f.css - 404 Not Found (44ms)

ActionController::RoutingError (No route matches [GET] "/assets/application-a05ca896e645eacb50266c7866d18a0f.css"):


Rendered C:/Ruby192/lib/ruby/gems/1.9.1/gems/actionpack-3.1.3/lib/action_dispatch/middleware/templates/rescues/routing_error.erb within rescues/layout
 (1.0ms)
[2011-12-19 23:59:39] INFO  going to shutdown ...
[2011-12-19 23:59:39] INFO  WEBrick::HTTPServer#start done.
Exiting

C:\documents\ajp_app>rails s
=> Booting WEBrick
=> Rails 3.1.3 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2011-12-20 00:00:14] INFO  WEBrick 1.3.1
[2011-12-20 00:00:14] INFO  ruby 1.9.2 (2011-07-09) [i386-mingw32]
[2011-12-20 00:00:14] INFO  WEBrick::HTTPServer#start: pid=2752 port=3000


Started GET "/" for 127.0.0.1 at 2011-12-20 00:00:20 +0000
  Processing by PagesController#home as HTML
  ←[1m←[36m (0.0ms)←[0m  ←[1mSHOW search_path←[0m
  ←[1m←[35mUser Load (1.0ms)←[0m  SELECT "users".* FROM "users" WHERE "users"."id" = 1 LIMIT 1
Rendered pages/home.html.erb within layouts/application (171.0ms)
Compiled application.css  (4ms)  (pid 2752)
Compiled colours.css  (9ms)  (pid 2752)
Compiled custom.css  (1ms)  (pid 2752)
Compiled activity.css  (26ms)  (pid 2752)
Compiled jquery/jquery-ui-1.8.13.custom.css  (1ms)  (pid 2752)
Compiled ellib/elcommon.css  (30ms)  (pid 2752)
Compiled ellib/eldialogform.css  (0ms)  (pid 2752)
Compiled elrte/elrte.css  (0ms)  (pid 2752)
Compiled activities/text_editor.css  (2ms)  (pid 2752)
Compiled errors.activities.css  (0ms)  (pid 2752)
Compiled errors_and_notices.css  (0ms)  (pid 2752)
Compiled general.css  (0ms)  (pid 2752)
Compiled application.js  (15ms)  (pid 2752)
Compiled jquery.js  (13ms)  (pid 2752)
Compiled jquery_ujs.js  (0ms)  (pid 2752)
Compiled jquery-ui.js  (19ms)  (pid 2752)
Compiled AJP_main.js  (1ms)  (pid 2752)
Compiled ajp.utilities.js  (2ms)  (pid 2752)
Rendered layouts/_header.html.erb (4.0ms)
Rendered layouts/_footer.html.erb (2.0ms)
Completed 200 OK in 1091ms (Views: 1076.0ms | ActiveRecord: 15.0ms)


Started GET "/assets/custom.css?body=1" for 127.0.0.1 at 2011-12-20 00:00:28 +0000
Served asset /custom.css - 304 Not Modified (6ms)


Started GET "/assets/jquery/jquery-ui-1.8.13.custom.css?body=1" for 127.0.0.1 at 2011-12-20 00:00:28 +0000
Served asset /jquery/jquery-ui-1.8.13.custom.css - 304 Not Modified (7ms)


Started GET "/assets/ellib/eldialogform.css?body=1" for 127.0.0.1 at 2011-12-20 00:00:28 +0000
Served asset /ellib/eldialogform.css - 304 Not Modified (5ms)


Started GET "/assets/elrte/elrte.css?body=1" for 127.0.0.1 at 2011-12-20 00:00:28 +0000
Served asset /elrte/elrte.css - 304 Not Modified (5ms)


Started GET "/assets/activities/text_editor.css?body=1" for 127.0.0.1 at 2011-12-20 00:00:28 +0000
Served asset /activities/text_editor.css - 304 Not Modified (9ms)


Started GET "/assets/activity.css?body=1" for 127.0.0.1 at 2011-12-20 00:00:28 +0000
Served asset /activity.css - 200 OK (10ms)


Started GET "/assets/errors.activities.css?body=1" for 127.0.0.1 at 2011-12-20 00:00:28 +0000
Served asset /errors.activities.css - 304 Not Modified (3ms)


Started GET "/assets/errors_and_notices.css?body=1" for 127.0.0.1 at 2011-12-20 00:00:28 +0000
Served asset /errors_and_notices.css - 304 Not Modified (3ms)


Started GET "/assets/general.css?body=1" for 127.0.0.1 at 2011-12-20 00:00:28 +0000
Served asset /general.css - 304 Not Modified (3ms)


Started GET "/assets/jquery.js?body=1" for 127.0.0.1 at 2011-12-20 00:00:28 +0000
Served asset /jquery.js - 304 Not Modified (12ms)


Started GET "/assets/jquery_ujs.js?body=1" for 127.0.0.1 at 2011-12-20 00:00:28 +0000
Served asset /jquery_ujs.js - 304 Not Modified (8ms)


Started GET "/assets/jquery-ui.js?body=1" for 127.0.0.1 at 2011-12-20 00:00:29 +0000
Served asset /jquery-ui.js - 304 Not Modified (42ms)


Started GET "/assets/AJP_main.js?body=1" for 127.0.0.1 at 2011-12-20 00:00:29 +0000
Served asset /AJP_main.js - 304 Not Modified (3ms)


Started GET "/assets/ajp.utilities.js?body=1" for 127.0.0.1 at 2011-12-20 00:00:29 +0000
Served asset /ajp.utilities.js - 304 Not Modified (10ms)


Started GET "/assets/ellib/elcommon.css?body=1" for 127.0.0.1 at 2011-12-20 00:00:29 +0000
Served asset /ellib/elcommon.css - 304 Not Modified (5ms)


Started GET "/assets/colours.css?body=1" for 127.0.0.1 at 2011-12-20 00:00:29 +0000
Served asset /colours.css - 304 Not Modified (12ms)


Started GET "/assets/activities/hello.png" for 127.0.0.1 at 2011-12-20 00:00:30 +0000
Served asset /activities/hello.png - 404 Not Found (13ms)

ActionController::RoutingError (No route matches [GET] "/assets/activities/hello.png"):


Rendered C:/Ruby192/lib/ruby/gems/1.9.1/gems/actionpack-3.1.3/lib/action_dispatch/middleware/templates/rescues/routing_error.erb within rescues/layout
 (1.0ms)
[2011-12-20 00:00:37] INFO  going to shutdown ...
[2011-12-20 00:00:37] INFO  WEBrick::HTTPServer#start done.
Exiting

C:\documents\ajp_app>rails s -e production
=> Booting WEBrick
=> Rails 3.1.3 application starting in production on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2011-12-20 00:01:17] INFO  WEBrick 1.3.1
[2011-12-20 00:01:17] INFO  ruby 1.9.2 (2011-07-09) [i386-mingw32]
[2011-12-20 00:01:17] INFO  WEBrick::HTTPServer#start: pid=5912 port=3000
cache: [GET /] miss


Started GET "/" for 127.0.0.1 at 2011-12-20 00:01:20 +0000
  Processing by PagesController#home as HTML
Rendered pages/home.html.erb within layouts/application (91.0ms)
Rendered layouts/_header.html.erb (3.0ms)
Rendered layouts/_footer.html.erb (1.0ms)
Completed 200 OK in 400ms (Views: 387.0ms | ActiveRecord: 12.0ms)
cache: [GET /assets/application-a05ca896e645eacb50266c7866d18a0f.css] miss,store


Started GET "/assets/application-a05ca896e645eacb50266c7866d18a0f.css" for 127.0.0.1 at 2011-12-20 00:01:21 +0000
Compiled application-a05ca896e645eacb50266c7866d18a0f.css  (4ms)  (pid 5912)
Compiled colours.css  (9ms)  (pid 5912)
Compiled custom.css  (0ms)  (pid 5912)
Compiled activity.css  (21ms)  (pid 5912)
Compiled jquery/jquery-ui-1.8.13.custom.css  (1ms)  (pid 5912)
Compiled ellib/elcommon.css  (0ms)  (pid 5912)
Compiled ellib/eldialogform.css  (1ms)  (pid 5912)
Compiled elrte/elrte.css  (1ms)  (pid 5912)
Compiled activities/text_editor.css  (0ms)  (pid 5912)
Compiled errors.activities.css  (1ms)  (pid 5912)
Compiled errors_and_notices.css  (0ms)  (pid 5912)
Compiled general.css  (0ms)  (pid 5912)
Served asset /application-a05ca896e645eacb50266c7866d18a0f.css - 200 OK (871ms)
cache: [GET /assets/application-9a36deba94d6308ab9bebe4e30a93959.js] miss


Started GET "/assets/application-9a36deba94d6308ab9bebe4e30a93959.js" for 127.0.0.1 at 2011-12-20 00:01:22 +0000
Compiled application-9a36deba94d6308ab9bebe4e30a93959.js  (9ms)  (pid 5912)
Compiled jquery.js  (13ms)  (pid 5912)
Compiled jquery_ujs.js  (1ms)  (pid 5912)
Compiled jquery-ui.js  (19ms)  (pid 5912)
Compiled AJP_main.js  (0ms)  (pid 5912)
Compiled ajp.utilities.js  (32ms)  (pid 5912)
Served asset /application-9a36deba94d6308ab9bebe4e30a93959.js - 304 Not Modified (110802ms)
cache: [GET /assets/logo_80px_80px-27d7b084daa398621574b10963529e84.png] miss


Started GET "/assets/logo_80px_80px-27d7b084daa398621574b10963529e84.png" for 127.0.0.1 at 2011-12-20 00:03:13 +0000
Served asset /logo_80px_80px-27d7b084daa398621574b10963529e84.png - 304 Not Modified (3ms)
cache: [GET /assets/hello.png] miss


Started GET "/assets/hello.png" for 127.0.0.1 at 2011-12-20 00:03:13 +0000
Served asset /hello.png - 404 Not Found (3ms)

ActionController::RoutingError (No route matches [GET] "/assets/hello.png"):


Rendered C:/Ruby192/lib/ruby/gems/1.9.1/gems/actionpack-3.1.3/lib/action_dispatch/middleware/templates/rescues/routing_error.erb within rescues/layout
 (1.0ms)

.
.
.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


validates:conclusion,:presence=>true,:inclusion=>{:in=>[0,1]}validates:email,:presence=>true,:length=>{:minimum=>3,:maximum=>254},:uniqueness=>true,:email=>truevalidates:ending_order,
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各Master的状态,如果Master异常,则会做主从切换,将Slave作为master,将master做为slave。其配置也较复杂,且表现一般。redis3.0以后已经支持集群容错功能,并且非常简单1.1素材准备centos7(集群搭建,至少三个master。需
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow                 不知道大家是否注意到,全新安装ruby之后,无论是在windows或是linux还是macosX下使用rix
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 modify_my_object!,这个方法名是以!结尾,在ruby的对象里边是用于表达修改本身的意思。比如String#gsub,返回的是一个新的字符串对象;而String#gsub!,返回的是自身已经被修改的对象。不止!这样的特殊字符可以命名,ruby
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表达方式即编程语言,语言是沟通的介质,而编程语言是程序员与计算机沟通的介质。 什么是编程? 编程即程序员根据需求把自己的思想流程按照某种编程语言的语法风格编写下来,产出的结果就是包含一堆字符的文件。二编程语言分
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编程语言的特性包括:数据封装数据抽象多态性继承这些特性将在面向对象的Ruby中进行讨论。一个面向对象的程序,涉及到的类和对象。类是个别对象创建的蓝图。在面向对象的术语中,您
1.ruby的标签<ruby>漢<rp>(<p><rt>han<t><rp>)<p>字<rp>(<p><rt>zi<t><rp>)<p><uby> 
1、软件安装1.安装包是个压缩包-->解压到/homeedis_tar下命令如下: tar-zxvf./../-C/homeedis_tar2.安装c++环境yum-yinstallgcc-c++(注:redis底层源码是c++)3.解压后需要源码编译进入到redis-3.0.0后执行make4.编译完后开始安装需要指定一个安装路径
1.sass基于Ruby语言开发而成,因此安装sass前需要安装Ruby。(注:mac下自带Ruby无需在安装Ruby!)window下安装SASS首先需要安装Ruby,先从官网下载Ruby并安装。安装过程中请注意勾选AddRubyexecutablestoyourPATH添加到系统环境变量。ruby官网:https:/ubyinstaller.org/downloa
本节对我们项目实现的功能和知识点做一个简单的介绍,因为是RESTfulAPI项目,所以对于后端来说基本上没有什么UI界面可展示,那我们就在关键的点,使用客户端(Android)实现的效果图。课程简介这是一门企业级项目实战课程,目的是从0使用Rails开发一个企业级RESTfulAPI项目;他不能让你年薪30