aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib/rails/engine.rb
Commit message (Collapse)AuthorAgeFilesLines
...
* Merge branch 'master' of git://github.com/lifo/docrailsXavier Noria2010-10-061-1/+1
|\
| * Fixed typo in engine documentationThomas McDonald2010-10-061-1/+1
| |
* | Provide a cleaner syntax for paths configuration that does not rely on ↵José Valim2010-10-061-27/+32
| | | | | | | | method_missing.
* | Use RbConfig instead of Config for 1.9.3 compatibility.José Valim2010-10-051-1/+1
| |
* | Add documentation on app_generatorsPiotr Sarnacki2010-10-031-0/+20
| |
* | Move routes_reloader to a class: RoutesReloaderPiotr Sarnacki2010-09-301-1/+1
| |
* | Properly reload routes defined in class definitionPiotr Sarnacki2010-09-301-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sometimes it's easier to define routes inside Engine or Application class definition (e.g. one file applications). The problem with such case is that if there is a plugin that has config/routes.rb file, it will trigger routes reload on application. Since routes definition for application is not in config/routes.rb file routes_reloader will fail to reload application's routes properly. With this commit you can pass routes definition as a block to routes method, which will allow to properly reload it: class MyApp::Application < Rails::Application routes do resources :users end end
* | Do not overwrite _railtie method on namespace while creating isolated engine ↵Piotr Sarnacki2010-09-301-12/+13
|/ | | | | | | | | or application. In order to run Engine as standalone application, you will need Rails::Application instance in the same namespace that engine one. It's very important to leave _railtie bound to whatever used "namespace" method first.
* List all of isolated engine changesPiotr Sarnacki2010-09-201-3/+21
| | | | Signed-off-by: José Valim <jose.valim@gmail.com>
* Strengthen documantation on engine's migrations and seed dataPiotr Sarnacki2010-09-201-0/+15
| | | | Signed-off-by: José Valim <jose.valim@gmail.com>
* Add helper for loading seed data for engine and applicationPiotr Sarnacki2010-09-201-0/+9
| | | | Signed-off-by: José Valim <jose.valim@gmail.com>
* Add documentation on serving assets from engine strategiesPiotr Sarnacki2010-09-061-0/+10
| | | | Signed-off-by: José Valim <jose.valim@gmail.com>
* Removed deprecated router API from railtiesPiotr Sarnacki2010-09-051-11/+0
|
* Small tidy up on Rails::Engine.José Valim2010-09-041-48/+49
|
* I've changed that test along the way, it should actually stay without changesPiotr Sarnacki2010-09-031-6/+6
|
* Use default_scope in isolated Engines to not force user to scope his routesPiotr Sarnacki2010-09-031-0/+2
|
* engines_blank_point should always be the last initializer in EnginePiotr Sarnacki2010-09-031-5/+5
|
* We should avoid creating additional initializers when we can, adding them ↵Piotr Sarnacki2010-09-031-3/+1
| | | | makes boot process slower
* Add some more docs on polymorphic_url with routes proxyPiotr Sarnacki2010-09-031-0/+10
|
* Include all helpers from non-namespaced enginesPiotr Sarnacki2010-09-031-2/+16
|
* Get rid of static_paths method and instead configure paths for ↵Piotr Sarnacki2010-09-031-0/+7
| | | | ActionDispatch::Static in initializers
* Documented mounted helpersPiotr Sarnacki2010-09-031-0/+29
|
* Document engine_namePiotr Sarnacki2010-09-031-0/+16
|
* Added documentation for namespaced EnginePiotr Sarnacki2010-09-031-2/+34
|
* Add table_name_prefix to Engine's namespace automaticallyPiotr Sarnacki2010-09-031-0/+8
|
* Rename isolated_engine_for to namespacePiotr Sarnacki2010-09-031-3/+3
|
* Include application's helpers and router helpers by default, but include ↵Piotr Sarnacki2010-09-031-0/+9
| | | | engine's ones for controllers inside isolated namespace
* Engine's assets are now served with ActionDispatch::StaticPiotr Sarnacki2010-09-031-5/+4
|
* Set asset_path to engine_name by defaultPiotr Sarnacki2010-09-031-1/+5
|
* Added tests for railtie_name and aliased it in engine as engine_namePiotr Sarnacki2010-09-031-0/+2
|
* Added ability to set asset_path for enginesPiotr Sarnacki2010-09-031-2/+21
|
* Added documentation on endpoint, middeware stack and routes for EnginePiotr Sarnacki2010-09-031-0/+60
|
* Fix url generation for mounted EnginePiotr Sarnacki2010-09-031-7/+2
| | | | | | | | | I added integration tests for generating urls in Engine and application and tweaked Engines to fully cooparate with new router's behavior: * Rails.application now sets ORIGINAL_SCRIPT_NAME * Rails.application also sets its routes as env['action_dispatch.parent_routes'] * Engine implements responds_to? class method to respond to all the instance methods, like #routes
* Pass routes via env['action_dispatch.routes'], it's needed by routes to ↵Piotr Sarnacki2010-09-031-1/+7
| | | | determine if it should generate prefix for mounted apps
* Move singleton pattern to Railtie and remove Engine::Configurable and ↵Piotr Sarnacki2010-09-031-12/+21
| | | | Application::Configurable in favor of unified Railtie::Configurable
* Removed most of deprecated stuff from Application and EnginePiotr Sarnacki2010-09-031-3/+0
|
* Allow Engines loading its own environment file from config/environmentsPiotr Sarnacki2010-09-031-0/+9
|
* Removed ActionDispatch::Static, but left empty MiddlewareStack to unify app ↵Piotr Sarnacki2010-09-031-6/+8
| | | | method between Engine and Application
* Engine can now serve files with ActionDispatch::StaticPiotr Sarnacki2010-09-031-1/+10
|
* Engine sets routes as default rack endpoint if no endpoint was givenPiotr Sarnacki2010-09-031-2/+5
|
* Delegate non existing class methods to instance for EnginePiotr Sarnacki2010-09-031-0/+6
|
* Gather initializers from railties in engines to get rid of additional ↵Piotr Sarnacki2010-09-031-0/+7
| | | | looping through initializers
* Engine can now load its own pluginsPiotr Sarnacki2010-09-031-0/+5
|
* Made Engine valid rack app with its own middleware stackPiotr Sarnacki2010-09-031-0/+13
|
* Config is deprecated on 1.8.8 and 1.9.3 use RbConfigSantiago Pastorino2010-08-231-1/+1
|
* A few changes were done in this commit:José Valim2010-06-281-11/+10
| | | | | | * Added :autoload to engines path API and redefine usage to be in sync with 6f83a5036d8a9c3f8ed7; * Do not autoload code in *lib* for applications (now you need to explicitly require them). This makes an application behave closer to an engine (code in lib is still autoloaded for plugins); * Always autoload code in app/ for engines and plugins. This makes engines behave closer to an application and should allow us to get rid of the unloadable hack required when controllers inside engines inherit from ApplicationController;
* renames load_(once_)paths to autoload_(once_)paths in dependencies and configXavier Noria2010-06-241-8/+8
|
* Removing Metal from Rails 3. wycats2010-05-291-6/+1
| | | | | | | | | | | | | | | | | | | | If you have existing Metals, you have a few options: * if your metal behaves like a middleware, add it to the middleware stack via config.middleware.use. You can use methods on the middleware stack to control exactly where it should go * if it behaves like a Rack endpoint, you can link to it in the router. This will result in more optimal routing time, and allows you to remove code in your endpoint that matches specific URLs in favor of the more powerful handling in the router itself. For the future, you can use ActionController::Metal to get a very fast controller with the ability to opt-in to specific controller features without paying the penalty of the full controller stack. Since Rails 3 is closer to Rack, the Metal abstraction is no longer needed.
* Ensure that eager_load actually takes place just after the middleware stack ↵José Valim2010-05-151-13/+12
| | | | | | is built by using another pattern. Also create a engine_blank_point initializer to ensure any :before or :after hooks defined inside engines won't move the configuration initializers to other places.
* Reorganized initializers a bit to enable better hooks for common cases ↵wycats2010-05-151-5/+10
| | | | | | | | | | | | | | | without the need for Railtie. Specifically, the following hooks were added: * before_configuration: this hook is run immediately after the Application class comes into existence, but before the user has added any configuration. This is the appropriate place to set configuration for your plugin * before_initialize: This is run after all of the user's configuration has completed, but before any initializers have begun (in other words, it runs right after config/environments/{development,production,test}.rb) * after_initialize: This is run after all of the initializers have run. It is an appropriate place for forking in a preforking setup Each of these hooks may be used via ActiveSupport.on_load(name) { }. In all these cases, the context inside the block will be the Application object. This means that for simple cases, you can use these hooks without needing to create a Railtie.