尝试在Heroku上编译资产时收到此错误
Custom asset_path helper is not implemented
Extend your environment context with a custom method.
environment.context_class.class_eval do
def asset_path(path, options = {})
end
end
我已经尝试了很多我可以通过谷歌找到的东西。在预编译包含2个@import语句的资产active_admin.css时,Heroku似乎陷入了困境。如果我对它们进行评论,那么构建将继续进行,但没有活动的管理样式表在生产中工作。
如果有人有任何想法,请告知。谢谢。
答案 0 :(得分:0)
我通过删除application.rb中与资产预编译相关的所有配置来修复此问题,并添加了一个catch all编译脚本。我想不知何故它丢失了一个文件,导致错误:
# Precompile all assets
# application.rb
config.assets.precompile << Proc.new do |path|
if path =~ /\.(css|js)\z/
full_path = Rails.application.assets.resolve(path).to_path
app_assets_path = Rails.root.join('app', 'assets').to_path
if full_path.starts_with? app_assets_path
puts "including asset: " + full_path
true
else
puts "excluding asset: " + full_path
false
end
else
false
end
end