Я получаю эту ошибку на своем рабочем сервере и не могу понять, почему. Это происходит при выполнении этой команды:
bundle exec rake assets:precompile RAILS_ENV=production
Я использую Rails 3.1.0.rc6.
Я получаю эту ошибку на своем рабочем сервере и не могу понять, почему. Это происходит при выполнении этой команды:
bundle exec rake assets:precompile RAILS_ENV=production
Я использую Rails 3.1.0.rc6.
Скорее всего, это связано с тем, что ваш config/application.rb
не требует rails/all
(по умолчанию), но требует некоторых пользовательских настроек.
Чтобы решить эту проблему, добавьте в config/application.rb
следующее:
require 'sprockets/railtie'
$ rails new my_api --api
создается файл application.rb с закомментированной конкретной строкой.
- person Pimentoso; 27.10.2016
Я знаю, что это старый пост, но я подумал, что это может помочь кому-то (возможно, самому себе в будущем), если я добавлю это к ответам.
load 'deploy/assets'
require 'sprockets/railtie'
Я думаю, что это может быть потому, что вам не нужны драгоценные камни активов в производстве. По умолчанию rails ожидает, что вы предварительно скомпилируете свои активы в рабочей среде. Измените это в config/application.rb:
Закомментируйте эту строку:
Bundler.require *Rails.groups(:assets => %w(тест разработки))
И раскомментируйте эту строку:
Bundler.require(:default, :assets, Rails.env)
Я запускал эту команду — по привычке — в корне приложения только для API, у которого, конечно, нет ресурсов.
Это странно. Вы всегда можете попробовать добавить
load "sprockets/assets.rake"
в ваш Rakefile. Он должен быть включен в пакет действий.
Мой Rakefile содержит:
require File.expand_path('../config/application', __FILE__)
Qnm::Application.load_tasks
assets:precompile
. Может быть, недостающий драгоценный камень или что-то в этом роде. - person rubish   schedule 26.08.2011