Witam,
mam problem z pierwszą aplikacją zaprezentowaną w “Agile Web Development with Rails”…
Jest to najprostszy Hello world.
Mam say_controller:
class SayController < ApplicationController
def hello
end
end
hello.rhtml:
Hello, Rails!Hello from Rails!
I standardowy routes.rb (może tu jest problem?):
ActionController::Routing::Routes.draw do |map|
The priority is based upon order of creation: first created -> highest priority.
Sample of regular route:
map.connect ‘products/:id’, :controller => ‘catalog’, :action => ‘view’
Keep in mind you can assign values other than :controller and :action
Sample of named route:
map.purchase ‘products/:id/purchase’, :controller => ‘catalog’, :action => ‘purchase’
This route can be invoked with purchase_url(:id => product.id)
Sample resource route (maps HTTP verbs to controller actions automatically):
map.resources :products
Sample resource route with options:
map.resources :products, :member => { :short => :get, :toggle => :post }, :collection => { :sold => :get }
Sample resource route with sub-resources:
map.resources :products, :has_many => [ :comments, :sales ], :has_one => :seller
Sample resource route with more complex sub-resources
map.resources :products do |products|
products.resources :comments
products.resources :sales, :collection => { :recent => :get }
end
Sample resource route within a namespace:
map.namespace :admin do |admin|
# Directs /admin/products/* to Admin::ProductsController (app/controllers/admin/products_controller.rb)
admin.resources :products
end
You can have the root of your site routed with map.root – just remember to delete public/index.html.
map.root :controller => “say”
See how all your routes lay out with “rake routes”
Install the default routes as the lowest priority.
Note: These default routes make all actions in every controller accessible via GET requests. You should
consider removing the them or commenting them out if you’re using named routes and resources.
map.connect ‘:controller/:action/:id’
map.connect ‘:controller/:action/:id.:format’
end
Po wywołaniu: http://***/demo/public/say/hello
dostaję komunikat:
Routing Error
No route matches “/demo/public/say/hello” with {:method=>:get}
To samo dzieje się gdy wywołam samo: /demo/public.
Spotkał się ktoś może z takim problemem i wie jak go rozwiązać…?
Pzdr.