aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_dispatch
Commit message (Collapse)AuthorAgeFilesLines
* Fix generating urls with mounted helpers in view contextPiotr Sarnacki2010-09-031-1/+1
| | | | | | | | | | There were actually 2 problems with this one: * script_name was added to options as a string and then it was used in RouteSet#url_for with usage of <<, which was changing the original script_name * the second issue was with _with_routes method. It was called in RoutesProxy to modify _routes in view_context, but url_helpers in views is just delegating it to controller, so another _with_routes call is needed there
* For view_context we need to initialize RoutesProxy in context of controller, ↵Piotr Sarnacki2010-09-031-2/+4
| | | | not view, quick fix, I need to dig into it later
* Modified ActionDispatch::Static to allow passing multiple rootsPiotr Sarnacki2010-09-031-10/+50
|
* Add Rails::Railtie.railtie_name method to allow setting custom name for railtiePiotr Sarnacki2010-09-031-2/+7
|
* We don't need delegating polymorphic_url and polymorphic_path anymorePiotr Sarnacki2010-09-031-10/+6
|
* Added ability to set asset_path for enginesPiotr Sarnacki2010-09-031-1/+1
|
* Add mounted_helpers to routesPiotr Sarnacki2010-09-033-23/+69
| | | | | | | | | | | | | | | | mounted_helpers are a bit similar to url_helpers. They're automatically included in controllers for Rails.application and each of mounted Engines. Mounted helper allows to call url_for and named helpers for given application. Given Blog::Engine mounted as blog_engine, there are 2 helpers defined: app and blog_engine. You can call routes for app and engine using those helpers: app.root_url app.url_for(:controller => "foo") blog_engine.posts_path blog_engine.url_for(@post)
* Routes refactoring:Piotr Sarnacki2010-09-033-9/+6
| | | | | | | * added more tests for prefix generation * fixed bug with generating host for both prefix and url * refactored url_for method * organized tests for prefix generation
* Extended url_for to handle specifying which router should be used.Piotr Sarnacki2010-09-033-29/+42
| | | | | | | A few examples: url_for Blog::Engine, :posts_path url_for Blog::Engine, @post url_for Blog::Engine, :action => "main", :controller => "index"
* Get rid of :skip_prefix options in routesPiotr Sarnacki2010-09-031-6/+3
|
* New way of generating urls for Application from Engine.Piotr Sarnacki2010-09-032-7/+12
| | | | | | | | | It's based specifying application's script_name with: Rails.application.default_url_options = {:script_name => "/foo"} default_url_options method is delegated to routes. If router used to generate url differs from the router passed via env it always overwrites :script_name with this value.
* Allow to generate Application routes inside EnginePiotr Sarnacki2010-09-032-4/+4
| | | | | | This requires knowledge about original SCRIPT_NAME and the parent router. It should be pass through the env as ORIGIAL_SCRIPT_NAME and action_dispatch.parent_routes
* Use env['action_dispatch.routes'] to determine if we should generate prefix ↵Piotr Sarnacki2010-09-033-7/+48
| | | | | | | | | | or not. This technique is here to allow using routes from Engine in Application and vice versa. When using Engine routes inside Application it should generate prefix based on mount point. When using Engine routes inside Engine it should use env['SCRIPT_NAME']. In any other case it should generate prefix as env should not be even available.
* require 'active_support/dependencies' in action_dispatch/middleware/stackPiotr Sarnacki2010-09-031-0/+1
|
* Revert "Setup explicit requires for files with exceptions. Removed them from ↵José Valim2010-09-024-4/+0
| | | | | | | | autoloading." Booting a new Rails application does not work after this commit [#5359 state:open] This reverts commit 38a421b34d0b414564e919f67d339fac067a56e6.
* Ensure routes are loaded only after the initialization process finishes, ↵José Valim2010-09-021-5/+0
| | | | ensuring all configuration options were applied.
* Setup explicit requires for files with exceptions. Removed them from ↵Łukasz Strzałkowski2010-09-024-0/+4
| | | | | | autoloading. Signed-off-by: José Valim <jose.valim@gmail.com>
* Move implicit nested call before options handling so that nested constraints ↵Andrew White2010-09-011-9/+7
| | | | | | work [#5513 state:resolved] Signed-off-by: José Valim <jose.valim@gmail.com>
* resolves merge conflictXavier Noria2010-08-317-62/+263
|\
| * Expanded routing documentation with current best practicesJoost Baaij2010-08-295-21/+188
| |
| * Rework the routing documentation.Joost Baaij2010-08-281-22/+75
| | | | | | | | | | Move the default route to the bottom, as this practise should be discouraged. Add documentation for resources, external redirects and Rack applications.
| * The call-seq directive has no useful effect on our documentation and is not ↵Joost Baaij2010-08-281-19/+0
| | | | | | | | | | | | | | | | | | | | | | used anywhere else. Worse still, its use breaks some rdoc, replacing method names with a curly brace. Having just one call-seq directive doesn't add anything since this is covered by regular rdoc. Having multiple might make sense, but these are already documented with examples. This partly re-reverts 60de0e56b7f57f0052d7e4f43bd2ef9e363c6a1a but does not touch the vendorized code in html-scanner.
* | Micro optimization for build_named_route_call in PolymorphicRoutes:yury2010-08-281-10/+10
|/ | | | | | | | | 1. use map instead of inject 2. use [].join("_") instead of '<<'. It is a little bit faster for ruby 1.9.2 and x2 faster for ruby 1.8.7. http://gist.github.com/548143 [#5450 state:resolved] Signed-off-by: José Valim <jose.valim@gmail.com>
* Use common terminologyJoost Baaij2010-08-271-3/+3
|
* Revert "call-seq directive makes rdoc cry and replaces method names with a ↵Xavier Noria2010-08-271-9/+28
| | | | | | | | curly brace; besides it doesn't add anything when you only list one call example since this is obviously documented already" Reason: Part of this commit touches vendorized stuff, the rest is fine, could you please repatch? This reverts commit 60de0e56b7f57f0052d7e4f43bd2ef9e363c6a1a.
* escape constants that should not be linked toJoost Baaij2010-08-275-11/+11
|
* mention the alert and notice accessors on the flashJoost Baaij2010-08-271-0/+5
|
* expand cookie examples with signed and permanent methodsJoost Baaij2010-08-271-2/+11
|
* call-seq directive makes rdoc cry and replaces method names with a curly ↵Joost Baaij2010-08-271-28/+9
| | | | brace; besides it doesn't add anything when you only list one call example since this is obviously documented already
* Use nested scope for routes defined at the :resources scope level (as in ↵Andrew White2010-08-241-5/+6
| | | | | | Rails 2.3) Signed-off-by: José Valim <jose.valim@gmail.com>
* Allow format to be skipped. This is used internally by mount.José Valim2010-08-241-2/+5
|
* Finally fix the bug where symbols and strings were not having the same ↵José Valim2010-08-241-67/+46
| | | | | | | behavior in the router. If you were using symbols before for methods like match/get/post/put/delete, it is likely that this commit will break your routes. Everything should behave the same if you are using strings, if not, please open up a ticket.
* Ensure shortcuts inside resources also generates helpers.José Valim2010-08-241-48/+39
|
* Fix how routes inside namespaces are generated.José Valim2010-08-241-1/+1
|
* Allow actions which start with A-Za-z_ onlySantiago Pastorino2010-08-241-1/+1
|
* Reset symbolized path parameters when a test request is recycled [#5437 ↵Andrew White2010-08-241-2/+2
| | | | | | state:resolved] Signed-off-by: José Valim <jose.valim@gmail.com>
* Ensure prefix in routes are generated properly.José Valim2010-08-241-13/+10
|
* Fix a bug where symbols and strings were not behaving the same in the ↵José Valim2010-08-241-9/+4
| | | | router. [#5431 state:resolved]
* When custom resource actions are specified using strings add the default ↵Andrew White2010-08-241-2/+6
| | | | | | | | name and action if the string is a valid ruby method name. [#5431 state:resolved] Signed-off-by: José Valim <jose.valim@gmail.com>
* Cache the symbolized path parameters using a instance variable in the ↵Andrew White2010-08-222-3/+8
| | | | | | | | | | | request object rather than the environment hash. This it to prevent stale parameters in later routing constraints/redirects as only the normal path parameters are set by Rack::Mount. Also if a constraint proc arity is more than one, pass the symbolized path parameters as the first argument to match redirect proc args and provide easier access. [#5157 state:resolved] Signed-off-by: José Valim <jose.valim@gmail.com>
* Fix hash modification during iteration in Mapper [#5420]Nick Sieger2010-08-201-1/+1
| | | | Signed-off-by: Santiago Pastorino <santiago@wyeworks.com>
* Support routing constraints in functional testsAndrew White2010-08-202-16/+39
| | | | | | | | | | Extend assert_recognizes and assert_generates to support passing full urls as the path argument. This allows testing of routing constraints such as subdomain and host within functional tests. [#5005 state:resolved] Signed-off-by: José Valim <jose.valim@gmail.com>
* Don't add the standard https port when using redirect in routes.rb and ↵Andrew White2010-08-202-1/+11
| | | | | | | | ensure that request.scheme returns https when using a reverse proxy. [#5408 state:resolved] Signed-off-by: José Valim <jose.valim@gmail.com>
* Allow symbols for :path resource(s) option [#5306 state:resolved]Andrew White2010-08-201-2/+2
| | | | Signed-off-by: José Valim <jose.valim@gmail.com>
* Move regexps in options hash to :constraints hash so that they are pushed ↵Andrew White2010-08-191-0/+4
| | | | | | into the scope [#5208 state:resolved] Signed-off-by: José Valim <jose.valim@gmail.com>
* Move edit route before show route so that it will have precedence if the :id ↵Andrew White2010-08-191-2/+2
| | | | | | parameter allows slashes [#5409 state:resolved] Signed-off-by: José Valim <jose.valim@gmail.com>
* Don't pluralize resource methods [#4704 state:resolved]Javier Martín2010-08-181-14/+14
| | | | Signed-off-by: Santiago Pastorino <santiago@wyeworks.com>
* Allow member actions (get, etc) to accept strings, with testAndre Arko2010-08-171-0/+1
|
* annoted_source_code may return nil if an error happens during template ↵José Valim2010-08-161-1/+1
| | | | compiling.
* Allow for any possible TLD when using the :all option with the cookie ↵Bryce Thornton2010-08-151-8/+18
| | | | | | session store. This works for subdomain.mysite.local, google.co.uk, google.com.au, etc. [#5147 state:resolved] Signed-off-by: José Valim <jose.valim@gmail.com>