file.png не скомпилирован - PullRequest
3 голосов
/ 08 ноября 2011

Я думал, что выяснил конвейер ресурсов, но не больше.

У меня есть таблица стилей с именем clients.css.scss

.client
{

  .list_view
  {
    width: 650px;
    height: 500px;
    overflow: auto;

    table
    {
      width: 650px;
      border: solid 2px #999999;
      border-collapse: collapse;

      thead tr
      {
        background: image-url('list-view-header.png') repeat-x;
      }

      thead tr:first-child
      {
        background-image: none;
      }
    }
  }
}

Каждый раз, когда я пытаюсь выполнить его предварительную компиляциюв работе я получаю сообщение об ошибке «file.png не прекомпилирован».

bundle exec  rake assets:precompile RAILS_ENV=production --trace
/usr/local/rvm/gems/ruby-1.9.2-p290@pm/gems/rack-1.3.4/lib/rack/backports/uri/common_192.rb:53: warning: already initialized constant WFKV_
** Invoke assets:precompile (first_time)
** Execute assets:precompile
/usr/local/rvm/gems/ruby-1.9.2-p290@pm/gems/rack-1.3.4/lib/rack/backports/uri/common_192.rb:53: warning: already initialized constant WFKV_
rake aborted!
list-view-header.png isn't precompiled
  (in /var/rails/pm.onlinetherapy.com/app/assets/stylesheets/clients.css.scss.erb)

Tasks: TOP => assets:precompile
(See full trace by running task with --trace)

Файл изображения находится в каталоге app / assets / images, и я вижу его в каталоге public / assets срасширенное имя отпечатка пальца.

Любые идеи будут полезны.

1 Ответ

1 голос
/ 08 ноября 2011

Я полагаю, что вам нужно вот что:

thead tr
  {
    background: image-url('/assets/list-view-header.png') repeat-x;
  }

Или вы можете изменить свой client.css.scss на clients.css.scss.erb и сделать это:

thead tr
  {
    background: image-url(<%= asset_path "list-view-header.png" %>) repeat-x;
  }
...