Remove deprecated support to define routes with `:to` option that

doesn't contain `#`
上级 4b19d5b7
* Remove deprecated support to define routes with `:to` option that doesn't contain `#`.
*Rafael Mendonça França*
* Remove deprecated `ActionDispatch::Response#to_ary`.
*Rafael Mendonça França*
......
......@@ -8,7 +8,6 @@
require 'active_support/inflector'
require 'action_dispatch/routing/redirection'
require 'action_dispatch/routing/endpoint'
require 'active_support/deprecation'
module ActionDispatch
module Routing
......@@ -279,22 +278,8 @@ def check_part(name, part, path_params, hash)
end
def split_to(to)
case to
when Symbol
ActiveSupport::Deprecation.warn(<<-MSG.squish)
Defining a route where `to` is a symbol is deprecated.
Please change `to: :#{to}` to `action: :#{to}`.
MSG
[nil, to.to_s]
when /#/ then to.split('#')
when String
ActiveSupport::Deprecation.warn(<<-MSG.squish)
Defining a route where `to` is a controller without an action is deprecated.
Please change `to: :#{to}` to `controller: :#{to}`.
MSG
[to, nil]
if to =~ /#/
to.split('#')
else
[]
end
......
......@@ -3331,30 +3331,6 @@ def test_mix_string_to_action
assert_equal 'comments#index', @response.body
end
def test_mix_symbol_to_controller_action
assert_deprecated do
draw do
get '/projects', controller: 'project_files',
action: 'index',
to: :show
end
end
get '/projects'
assert_equal 'project_files#show', @response.body
end
def test_mix_string_to_controller_action_no_hash
assert_deprecated do
draw do
get '/projects', controller: 'project_files',
action: 'index',
to: 'show'
end
end
get '/projects'
assert_equal 'show#index', @response.body
end
def test_shallow_path_and_prefix_are_not_added_to_non_shallow_routes
draw do
scope shallow_path: 'projects', shallow_prefix: 'project' do
......@@ -3629,15 +3605,13 @@ def test_missing_controller
assert_match(/Missing :controller/, ex.message)
end
def test_missing_action
def test_missing_controller_with_to
ex = assert_raises(ArgumentError) {
assert_deprecated do
draw do
get '/foo/bar', :to => 'foo'
end
draw do
get '/foo/bar', :to => 'foo'
end
}
assert_match(/Missing :action/, ex.message)
assert_match(/Missing :controller/, ex.message)
end
def test_missing_action_on_hash
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册