Rail Quickstart Guide: Always receiving "template missing" errors.

Hello,

Upon going through the rails quickstart guide: Getting Started with Rails — Ruby on Rails Guides & also this guide here: http://fuelyourcoding.com/creating-your-first-ruby-on-rails-application-from-scratch/ - I always get "Missing Template" errors.

Specifically: "Template is missing Missing template posts/index.erb in view path app/views"

Currently the file index.html.erb lives in app/views/posts/ - why is the error message looking for a .erb file when there is a .html.erb file in the folder that was created by a scaffold command? Renaming the file to .erb does not solve the problem.

Here's my setup info from localhost:3000 Ruby version 1.8.7 (universal-darwin10.0) RubyGems version 1.3.6 Rack version 1.0 Rails version 2.3.5 Active Record version 2.3.5 Active Resource version 2.3.5 Action Mailer version 2.3.5 Active Support version 2.3.5 Application root /Users/vtgbeats/[ Projects ]/[ Rails Apps ]/slambook Environment development Database adapter sqlite3 Database schema version 20100318235949

The routes.rb file is in default state.

I've successfully created small RORs apps before and now I can't even render a view, please help. Thanks everyone, Stone

Are you sure you don't have a typo, and name of your template looks exactly like that "app/views/posts/index.html.erb" ? if it's not could you provide here your posts controller, routs and index view

Thanks for your time. I'm almost sure there is no typo on my part. I'm actually starting to think there's something wrong with the environment as I have created small ror apps before without any issues and am somewhat experiences w/ rails. Having gone through the rails quickstart guide again, I have the same issue w/ home controller.

home_controller.rb ------ class HomeController < ApplicationController   def index   end end

routes.rb --------- ActionController::Routing::Routes.draw do |map|   # The priority is based upon order of creation: first created -> highest priority.   map.connect 'home/index', :controller => 'home', :action => 'index'

  # 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 => "welcome"

  # 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 or commenting them out if you're using named routes and resources.   map.root :controller => "home" end

index.html.erb --------- <h1>Home#index</h1> <p>Find me in app/views/home/index.html.erb</p>

Again, I am following the rails quickstart guide for 2.3 verbatim and still receiving this error: "Processing HomeController#index (for 127.0.0.1 at 2010-03-19 15:42:14) [GET] ActionView::MissingTemplate (Missing template home/index.erb in view path app/views): Rendering rescues/layout (internal_server_error)"

Any help greatly appreciated!!!!!!!! Thanks, Stone

If you read carefully Getting Started with Rails — Ruby on Rails Guides you can find that in your routes.rb file have to be following lines map.connect ':controller/:action/:id' map.connect ':controller/:action/:id.:format'

I also new in RoR and I don't know why you wrote "map.connect 'home/ index', :controller => 'home', :action => 'index' " in your routes.rb. and what it should be mean. We both need to read more about routes in RoR.