Hi, Referencing the URL http://localhost:3000/cvs netted me the response: “uninitialized constant CvsController::Cvs” with the trace information: K:/_Utilities/ruby186-26_rc2/ruby/lib/ruby/gems/1.8/gems/ activesupport-2.2.0/lib/active_support/dependencies.rb:102:in `const_missing'' app/controllers/cvs_controller.rb:5:in `index'' Lines 4-5 of the controller are: def index @cvs = Cvs.find(:all) The cause seems clearly related to item 3 below. What should I do to correct the situation. By way of background. 1. I created a Rails 2.0.2 Payroll application a few days ago. 2. I more recently upgraded Rails to 2.2, which required a couple tweaks: a. The statement I used was: a. Removed the “config.action_view.cache_template_extensions” reference b. Set RAILS_GEM_VERSION = ''2.2.0'' 3. Created new model, Cvs ... where there was one anomaly: a. The statement I used was: ruby script/generate scaffold Cvs filename:string created:date modified:date imported:date b. The scaffold reported “create app/models/cv.rb” instead of cvs.rb c. I tried changing the name manually, but that only introduced more error msgs 4. “raked” the migrations 5. Validated the table creation by running SQLite3 6. Ran into the problem reported at the beginning of this post. What are my options for extricating myself from this situation? Thanks in advance, Richard --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Hi Richard, RichardOnRails wrote:> Referencing the URL http://localhost:3000/cvs netted me the > response: > “uninitialized constant CvsController::Cvs” > with the trace information: >app/controllers/cvs_controller.rb:5:in `index'' > > Lines 4-5 of the controller are: > def index > @cvs = Cvs.find(:all) > > The cause seems clearly related to item 3 below. What should > I do to correct the situation.Change Cvs.find(:all) to Cv.find(:all) And yes, using a model name ending in ''s'' violates what it arguably Rails'' most fundamental convention (by way of Active Record''s fundamental role in Rails). Model names are singular versions of table names (so change app/models/cv.rb back if you haven''t already). The fix above is the easiest open to you and will have you swimming with the stream. If you really want to go a different way, it''s configurable. Start with the pluralization rules (Google is your friend). HTH, Bill By way of background. 1. I created a Rails 2.0.2 Payroll application a few days ago. 2. I more recently upgraded Rails to 2.2, which required a couple tweaks: a. The statement I used was: a. Removed the “config.action_view.cache_template_extensions” reference b. Set RAILS_GEM_VERSION = ''2.2.0'' 3. Created new model, Cvs ... where there was one anomaly: a. The statement I used was: ruby script/generate scaffold Cvs filename:string created:date modified:date imported:date b. The scaffold reported “create app/models/cv.rb” instead of cvs.rb c. I tried changing the name manually, but that only introduced more error msgs 4. “raked” the migrations 5. Validated the table creation by running SQLite3 6. Ran into the problem reported at the beginning of this post. What are my options for extricating myself from this situation? Thanks in advance, Richard --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Hi Bill, Great answer ... just what I was hoping for: Confirmation of my speculation and a Quick-and-dirty solution. The latter is important to my Rails education an a solution if I do that by accident with a client looking over my shoulder (which I hope starts happening in the Spring, despite the fact that I''m retired). Thank you very much for the help. Best wishes, Richard BTW: 1. I opted for restarting the development with a non-s-ending name. 2. I searched my faulty version for /cvs\./i and found two hits (with more to come if I continued this version): -- The one you mentioned in Payroll\app\controllers\cvs_controller.rb -- 2nd and 3rd ones in Payroll\test\functional\cvs_controller_test.rb On Nov 15, 5:49 pm, "Bill Walton" <bill.wal...-xwVYE8SWAR3R7s880joybQ@public.gmane.org> wrote:> Hi Richard, > > RichardOnRails wrote: > > Referencing the URLhttp://localhost:3000/cvsnetted me the > > response: > > “uninitialized constant CvsController::Cvs” > > with the trace information: > >app/controllers/cvs_controller.rb:5:in `index'' > > > Lines 4-5 of the controller are: > > def index > > @cvs = Cvs.find(:all) > > > The cause seems clearly related to item 3 below. What should > > I do to correct the situation. > > Change Cvs.find(:all) to Cv.find(:all) > > And yes, using a model name ending in ''s'' violates what it arguably Rails'' > most fundamental convention (by way of Active Record''s fundamental role in > Rails). Model names are singular versions of table names (so change > app/models/cv.rb back if you haven''t already). The fix above is the easiest > open to you and will have you swimming with the stream. If you really want > to go a different way, it''s configurable. Start with the pluralization > rules (Google is your friend). > > HTH, > Bill > > By way of background. > 1. I created a Rails 2.0.2 Payroll application a few days ago. > 2. I more recently upgraded Rails to 2.2, which required a couple > tweaks: > a. The statement I used was: > a. Removed the “config.action_view.cache_template_extensions” > reference > b. Set RAILS_GEM_VERSION = ''2.2.0'' > 3. Created new model, Cvs ... where there was one anomaly: > a. The statement I used was: > ruby script/generate scaffold Cvs filename:string created:date > modified:date imported:date > b. The scaffold reported “create app/models/cv.rb” instead of > cvs.rb > c. I tried changing the name manually, but that only introduced > more error msgs > 4. “raked” the migrations > 5. Validated the table creation by running SQLite3 > 6. Ran into the problem reported at the beginning of this post. > > What are my options for extricating myself from this situation? > > Thanks in advance, > Richard--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---