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 ->
# 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 ---------
Home#index
Find me in app/views/home/index.html.erb
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)”
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.
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.