【发布时间】:2021-06-03 22:25:39
【问题描述】:
我在开发模式下遇到错误,我尝试了所有解决方案,但没有任何效果。我正在使用 rails v 5.1.4 和 ruby v 2.4.1
Started GET "/assets/images/logo.png" for ::1 at 2021-03-05 01:07:59 -0700
ActionController::RoutingError (No route matches [GET] "/assets/images/logo.png"):
actionpack (5.1.5) lib/action_dispatch/middleware/debug_exceptions.rb:63:in `call'
actionpack (5.1.5) lib/action_dispatch/middleware/show_exceptions.rb:31:in `call'
railties (5.1.5) lib/rails/rack/logger.rb:36:in `call_app'
railties (5.1.5) lib/rails/rack/logger.rb:24:in `block in call'
activesupport (5.1.5) lib/active_support/tagged_logging.rb:69:in `block in tagged'
activesupport (5.1.5) lib/active_support/tagged_logging.rb:26:in `tagged'
activesupport (5.1.5) lib/active_support/tagged_logging.rb:69:in `tagged'
railties (5.1.5) lib/rails/rack/logger.rb:24:in `call'
这是查看文件 app/views/homepage/index.html.erb
<div style="background-image: url('/assets/images/logo.png')"></div>
这里是 assets.rb 文件 config/initializers/assets.rb
Rails.application.config.assets.version = '1.0'
Rails.application.config.assets.paths << Rails.root.join('node_modules')
Rails.application.config.assets.paths << Rails.root.join("app", "assets", "assets","images")
这里是 application.rb 文件 config/application.rb
require_relative 'boot'
require "rails"
require "active_model/railtie"
require "active_job/railtie"
require "active_record/railtie"
require "action_controller/railtie"
require "action_mailer/railtie"
require "action_view/railtie"
require "action_cable/engine"
require "sprockets/railtie"
require "rails/test_unit/railtie"
Bundler.require(*Rails.groups)
module BorroupMobile
class Application < Rails::Application
config.load_defaults 5.1
config.action_mailer.default_url_options = { :host => 'localhost' }
config.session_store :cookie_store, key: '_interslice_session'
config.middleware.use ActionDispatch::Cookies # Required for all session management
config.middleware.use ActionDispatch::Session::CookieStore, config.session_options
config.assets.enable=true
config.api_only = true
config.middleware.use ActionDispatch::Flash
config.middleware.use(Rack::MethodOverride)
end
end
在 production.rb 文件中,我添加了以下几行 config/environments/production.rb
config.assets.compile = true
config.assets.digest = false
config.serve_static_assets = false
在 production.rb 文件中,我添加了以下几行 config/environments/production.rb
config.assets.compile = true
config.assets.digest = false
config.serve_static_assets = false
我运行了 rake assets:预编译对我没有用
【问题讨论】:
标签: ruby-on-rails ruby rubygems