diff options
author | José Valim <jose.valim@gmail.com> | 2011-04-15 19:57:52 +0200 |
---|---|---|
committer | José Valim <jose.valim@gmail.com> | 2011-04-15 19:57:52 +0200 |
commit | afc828828ffffe7edeb4648a9d2aa4731191ae21 (patch) | |
tree | 8c85af7b1c0fa7fe1612d18f6d4573494f1d783b /railties/lib/rails/engine.rb | |
parent | d84b2f37d018621aea99bfe30611ab75a02a291a (diff) | |
download | rails-afc828828ffffe7edeb4648a9d2aa4731191ae21.tar.gz rails-afc828828ffffe7edeb4648a9d2aa4731191ae21.tar.bz2 rails-afc828828ffffe7edeb4648a9d2aa4731191ae21.zip |
Remove the ability for engines to serve assets from the public directory.
Diffstat (limited to 'railties/lib/rails/engine.rb')
-rw-r--r-- | railties/lib/rails/engine.rb | 74 |
1 files changed, 7 insertions, 67 deletions
diff --git a/railties/lib/rails/engine.rb b/railties/lib/rails/engine.rb index cbf09790ab..87385814f7 100644 --- a/railties/lib/rails/engine.rb +++ b/railties/lib/rails/engine.rb @@ -171,32 +171,6 @@ module Rails # # Now, +Engine+ will get only requests that were not handled by +Application+. # - # == Asset path - # - # When you use +Engine+ with its own public directory, you will probably want to copy or symlink it - # to application's public directory. To simplify generating paths for assets, you can set <tt>asset_path</tt> - # for an engine: - # - # module MyEngine - # class Engine < Rails::Engine - # config.asset_path = "/my_engine/%s" - # end - # end - # - # With such a config, asset paths will be automatically modified inside +Engine+: - # - # image_path("foo.jpg") #=> "/my_engine/images/foo.jpg" - # - # == Serving static files - # - # By default, Rails uses <tt>ActionDispatch::Static</tt> to serve static files in development mode. This is ok - # while you develop your application, but when you want to deploy it, assets from an engine will not be - # served by default. You should choose one of the two following strategies: - # - # * enable serving static files by setting config.serve_static_assets to true - # * copy engine's public files to application's public folder with <tt>rake ENGINE_NAME:install:assets</tt>, for example - # <tt>rake my_engine:install:assets</tt> - # # == Engine name # # There are some places where an Engine's name is used: @@ -427,8 +401,7 @@ module Rails def env_config @env_config ||= { - 'action_dispatch.routes' => routes, - 'action_dispatch.asset_path' => config.asset_path + 'action_dispatch.routes' => routes } end @@ -509,16 +482,7 @@ module Rails require environment if environment end - initializer :append_asset_paths do - config.asset_path ||= default_asset_path - - public_path = paths["public"].first - if config.compiled_asset_path && File.exist?(public_path) - config.static_asset_paths[config.compiled_asset_path] = public_path - end - end - - initializer :append_app_assets_path do |app| + initializer :append_assets_path do |app| app.config.assets.paths.unshift *paths["vendor/assets"].existent app.config.assets.paths.unshift *paths["app/assets"].existent end @@ -542,30 +506,14 @@ module Rails rake_tasks do next if self.is_a?(Rails::Application) - next unless has_migrations? or has_public? + next unless has_migrations? namespace railtie_name do - desc "Shortcut for copying migrations and assets from #{railtie_name}" - task :install do - Rake::Task["#{railtie_name}:install:migrations"].invoke if has_migrations? - Rake::Task["#{railtie_name}:install:public"].invoke if has_public? - end - namespace :install do - if has_migrations? - desc "Copy migrations from #{railtie_name} to application" - task :migrations do - ENV["FROM"] = railtie_name - Rake::Task["railties:install:migrations"].invoke - end - end - - if has_public? - desc "Copy public from #{railtie_name} to application" - task :public do - ENV["FROM"] = railtie_name - Rake::Task["railties:install:public"].invoke - end + desc "Copy migrations from #{railtie_name} to application" + task :migrations do + ENV["FROM"] = railtie_name + Rake::Task["railties:install:migrations"].invoke end end end @@ -573,10 +521,6 @@ module Rails protected - def default_asset_path - "/#{railtie_name}%s" - end - def routes? defined?(@routes) end @@ -585,10 +529,6 @@ module Rails paths["db/migrate"].first.present? end - def has_public? - paths["public"].first.present? - end - def find_root_with_flag(flag, default=nil) root_path = self.class.called_from |