Commit Graph

236 Commits

Author SHA1 Message Date
José Valim
8d72ba51ba Ensure nested namespaces work as expected. 2010-01-10 18:42:45 +01:00
Joao Carlos
36969c6ecd Fixes namespaced routes [#3673 status:resolved]
Signed-off-by: José Valim <jose.valim@gmail.com>
2010-01-10 12:49:31 +01:00
José Valim
3b631df101 Ensure that segments in default_url_options also work with format specified. 2010-01-07 17:17:06 +01:00
José Valim
f149eb19d4 From now on, parameters defined in default_url_options can be absent from named routes.
This allows the following setup to work:

  # app/controllers/application_controller.rb
  class ApplicationController
    def default_url_options(options=nil)
      { :locale => I18n.locale }
    end
  end

  # From your views and controllers:
  I18n.locale                 #=> :en
  users_url                   #=> "/en/users"
  users_url(:pl)              #=> "/pl/users"
  user_url(1)                 #=> "/en/users/1"
  user_url(:pl, 1)            #=> "/pl/users/1"
  user_url(1, :locale => :pl) #=> "/pl/users/1"

If you provide all expected parameters, it still works as previously.
But if any parameter is missing, it tries to assign all possible ones
with the hash returned in default_url_options or the one passed straight
to the named route method.

Beware that default_url_options in ApplicationController is not shared
with ActionMailer, so you are required to always give the locale in your
email views.
2010-01-07 15:34:14 +01:00
José Valim
0d5ce7c525 namespace in routes changes both the path and name prefix. 2010-01-06 09:51:46 +01:00
José Valim
e4099c2ad3 Allow named routes to be debugged. 2010-01-06 09:32:29 +01:00
José Valim
10389a4c29 Ruby 1.9.1 requires hash given to foormat to contain symbols. 2010-01-06 00:42:58 +01:00
José Valim
0cf190001e Remove CGI.escape in function of Rack::Mount.escape 2010-01-06 00:33:17 +01:00
José Valim
e55d70a380 redirect in routes takes port into account [#3653 status:resolved] 2010-01-05 23:40:56 +01:00
Joshua Peek
b3900a29eb All router redirect helper to accept a full URI [#3653 state:resolved] 2010-01-05 12:00:38 -06:00
Joshua Peek
8ff4faf66a assert_template depends on AV::Template monkey patches in action_view/test_case 2010-01-05 11:48:06 -06:00
Joshua Peek
3f28e0bda6 Trash string coercion rack hacks 2010-01-04 19:46:21 -06:00
Joshua Peek
2601a16ede Autoload AS test case 2010-01-04 16:22:46 -06:00
José Valim
562a00ba16 @_formats initialization should be AbstractController::Base. 2010-01-04 23:05:28 +01:00
José Valim
bd729344a7 Remove deprecated formatted named routes 2010-01-04 23:05:27 +01:00
José Valim
53c6984944 Add notifications to ActionDispatch::ShowExceptions, this can be used as hooks for plugins like ExceptionNotifier. 2010-01-03 23:33:34 +01:00
Stefan Penner
d531cbc809 fixed missing or incorrect session data error message 2010-01-02 23:01:06 -08:00
Yehuda Katz
cf4978313b Make sure evalled method knows where it came from 2009-12-29 01:04:32 -08:00
Jeremy Kemper
f79caa49fb Complain if there's no such middleware 2009-12-28 20:24:28 -08:00
Jeremy Kemper
9a650a6547 Silence some trivial warnings: shadowed local vars, indentation mismatches 2009-12-28 17:36:08 -08:00
Jeremy Kemper
7c4fb93ac3 Ruby 1.9: string is not enumerable, so #exclude? is not available 2009-12-27 15:38:00 -08:00
Jeremy Kemper
3a79117c77 Typo 2009-12-27 15:27:18 -08:00
David Heinemeier Hansson
438a8c3ec7 Require the enumberable extension from active support because we use #exclude? 2009-12-27 15:23:30 -08:00
David Heinemeier Hansson
95762cbbb3 Added shorthand for match 'products/overview' that expands to match 'products/overview', :to => 'products#overview', :as => 'products_overview' 2009-12-27 14:13:03 -08:00
Joshua Peek
feb7382047 AD::Cascade that supports X-Cascade 2009-12-26 13:28:06 -06:00
Joshua Peek
673fa7f066 rack-mount 0.4 2009-12-26 13:25:36 -06:00
David Heinemeier Hansson
7f5d44bac5 The controller key shouldnt be part of the mapping if its not used 2009-12-25 10:14:44 -08:00
David Heinemeier Hansson
38af368360 Merge 2009-12-24 15:24:57 -08:00
David Heinemeier Hansson
2b7256a42e Extract Mapping class from monster match method 2009-12-24 15:23:39 -08:00
Sam Ruby
aa3565f3a6 Allow named_routes to be used with root, and with new DSL short-form.
The real use case it to make all of the following act the same:

  root 'store#index', :as => 'store'
  match '/' => 'store#index', :as => 'store'
  match '/', :to => 'store#index', :as => 'store'

The test case provided deviates from this in order to demonstrate all three
forms in a single set of test routes.

Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
2009-12-23 20:55:21 -08:00
Jeremy Kemper
4d3602a8c4 Routing: fix that route shorthand shouldn't ignore other options. Raise if :as option is given to root method since its name is always 'root' 2009-12-23 17:42:30 -08:00
Jeremy Kemper
94bb331635 Shift more responsibility from application class to its singleton instance. Treat instantiation and boot as separate steps. Use app.config rather than app.configuration. 2009-12-23 17:11:17 -08:00
David Heinemeier Hansson
e7ef57dd0d Merge 2009-12-22 17:31:29 -08:00
David Heinemeier Hansson
fe5f660413 Dont encourage __FILE__ bullshit 2009-12-22 17:25:34 -08:00
Joshua Peek
b1aee9f4ee All AD modules are "deferrable" 2009-12-22 17:11:21 -06:00
Joshua Peek
df7faef68e Referer and user agent are in Rack::Request 2009-12-22 16:09:41 -06:00
Joshua Peek
a1bf2f96ce AD::StatusCodes support is now part of rack 2009-12-22 16:08:03 -06:00
Joshua Peek
715dd10961 Less annoying RoutingError message 2009-12-21 17:34:53 -06:00
David Heinemeier Hansson
3ff9e9ee14 Its now possible to use match 'stuff' => 'what#stuff' instead of using the :to for simple routes 2009-12-20 20:37:36 -08:00
Joshua Peek
15f95621d5 We don't need AD parse_config 2009-12-20 21:11:42 -06:00
Yehuda Katz
17f66473bc AC::Head now doesn't have an unfulfilled Rendering dependency, and instead works just fine standalone (which means that ConditionalGet also doesn't have a Rendering dependency) 2009-12-20 18:50:54 -08:00
David Heinemeier Hansson
eeda059818 Just a little tidying 2009-12-20 18:37:09 -08:00
David Heinemeier Hansson
cf9d6a95e8 Added ActionDispatch::Request#authorization to access the http authentication header regardless of its proxy hiding [DHH] 2009-12-20 18:30:50 -08:00
Yehuda Katz
e48b4c2dd0 :to => redirect() can take a String using 1.9-style interpolation or proc that takes the path parameters as a Hash 2009-12-20 14:07:32 -08:00
Joshua Peek
2419fae092 Pending tests for AD Response 2009-12-17 22:10:37 -06:00
Joshua Peek
7217d64f61 Use AbstractController error constants 2009-12-16 16:11:42 -06:00
Joshua Peek
5f8e48cbd2 Move route reloading into railties 2009-12-14 17:54:41 -06:00
Joshua Peek
ec99eca013 Fix loading plugin and engine route sets 2009-12-14 16:51:13 -06:00
Joshua Peek
2130566acf Fix warnings in AD::Response 2009-12-14 15:47:52 -06:00
Joshua Peek
018dafe574 Allow autoloads to opt out of eager loading 2009-12-12 18:41:26 -06:00