Default routes in rails 3.0

Hi, I just created a scaffolding controller and tried to run the tests and see it in the web browser. The problem is that I don't think the routes were setup properly or at all. I get this error when I run the tests:

ActionController::RoutingError: No route matches {:task=>{"created_at"=>2010-10-12 03:06:22 UTC, "id"=>980190962, "name"=>nil, "updated_at"=>2010-10-12 03:06:22 UTC, "value"=>nil}, :controller=>"tasks", :action=>"create"} test/functional/tasks_controller_test.rb:21:in `block (2 levels) in <class:TasksControllerTest>'     test/functional/tasks_controller_test.rb:20:in `block in <class:TasksControllerTest>'

So all the tests fail. Likewise, http://localhost:3000/tasks/ gives this error:

    No route matches "/tasks"

This is a fresh install of a rails application, so I didn't do anything to mess it up :wink: I'm assuming rails is suppose to infer these urls/routes through convention? Why isn't it doing that?

Thanks

Run rake routes to see your routes.

Thanks very much for your response.

I actually ran this command already. This is what it prints out:

********@ubuntu:~/RubymineProjects/blog$ rake routes (in /home/egervari/RubymineProjects/blog) ********@ubuntu:~/RubymineProjects/blog$

So... basically nothing.

What's in your config/routes.rb file?

Basically nothing. I don't think the generators put anything here for me.

  RjsDemo::Application.routes.draw do     # lots and lots of comments   end

Okay, I think I fixed it:

I added this line and that works:

  resources :tasks

Phew...

nice!

Hi,

default routes are commented out by default in rails 3 as a security issue. So you can't reach any action on your controllers if you just know or guess the name of it.

/:controller(/:action(/:id))(.:format)

You can comment it in again if you want to. It is at the bottom of routes.rb.

Max.