<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -305,6 +305,7 @@ module ActionController
       end
 
       def add_route(path, options = {})
+        options.each { |k, v| options[k] = v.to_s if [:controller, :action].include?(k) &amp;&amp; v.is_a?(Symbol) }
         route = builder.build(path, options)
         routes &lt;&lt; route
         route</diff>
      <filename>actionpack/lib/action_controller/routing/route_set.rb</filename>
    </modified>
    <modified>
      <diff>@@ -2492,6 +2492,16 @@ class RouteSetTest &lt; Test::Unit::TestCase
     end
     assert_equal({:controller =&gt; 'pages', :action =&gt; 'show', :name =&gt; 'JAMIS'}, set.recognize_path('/page/JAMIS'))
   end
+
+  def test_routes_with_symbols
+    set.draw do |map|
+      map.connect 'unnamed', :controller =&gt; :pages, :action =&gt; :show, :name =&gt; :as_symbol
+      map.named   'named',   :controller =&gt; :pages, :action =&gt; :show, :name =&gt; :as_symbol
+    end
+    assert_equal({:controller =&gt; 'pages', :action =&gt; 'show', :name =&gt; :as_symbol}, set.recognize_path('/unnamed'))
+    assert_equal({:controller =&gt; 'pages', :action =&gt; 'show', :name =&gt; :as_symbol}, set.recognize_path('/named'))
+  end
+
 end
 
 class RouteLoadingTest &lt; Test::Unit::TestCase</diff>
      <filename>actionpack/test/controller/routing_test.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>0fbf458b6c7992a1626282727a70636af19450d5</id>
    </parent>
  </parents>
  <author>
    <name>Jes&#250;s Garc&#237;a S&#225;ez</name>
    <email>blaxter@gmail.com</email>
  </author>
  <url>http://github.com/rails/rails/commit/fc6077d76ecbf20d29e9963afcabfd613d839091</url>
  <id>fc6077d76ecbf20d29e9963afcabfd613d839091</id>
  <committed-date>2009-07-02T12:18:48-07:00</committed-date>
  <authored-date>2009-06-23T13:54:32-07:00</authored-date>
  <message>Allow symbols on routes declaration (:controller and :action values) [#2828 state:resolved]

Signed-off-by: Yehuda Katz + Carl Lerche &lt;ykatz+clerche@engineyard.com&gt;</message>
  <tree>b602f496778197890eeac8c19c2a39b5bcdd0c45</tree>
  <committer>
    <name>Yehuda Katz + Carl Lerche</name>
    <email>ykatz+clerche@engineyard.com</email>
  </committer>
</commit>
