On Sep 27, 4:04 pm, bluesprue <bluesp...@tesco.net> wrote:
> I've recently upgraded an application to use Rails 3.1, and in the
> course of so doing encountered some strange behaviour that I hope will
> not be experienced by others. I have several ActiveRecord model
> objects in my application: User, Discussion, Image and Specimen. These
> all worked absolutely fine in RoR 2.3.8. But in 3.1, Specimen would do
> nothing but refuse to find its associated database table ('Could not
> find table "specimen"'), nor would it expose any of its ActiveRecord
> methods. The other objects (User, Discussion, Image) worked no problem
> at all. In spite of this, I was able to up, down, change and do all
> the usual migrations to the Specimen model as expected. The solution
> was to rename all references in the application from Specimen to
> Specimn (yes, I know), which put everything back on track. I can find
> no mention of this word in any reserved word list (http://
> oldwiki.rubyonrails.org/rails/pages/ReservedWords,http://wiki.rubyonrails.org/rails/pages/reservedwords#reserved_words_...),
> nor in the SQLite documentation. Something to watch for, or have I
> missed something obvious?
I suspect you've got an initializer that added the correct
pluralization rule that isn't getting picked up in 3.1. Out-of-the-box
(on both Rails 2 and 3), "specimen" works like this:
"specimen".pluralize => "specimen"
"specimen".singularize => "speciman"
--Matt Jones
--
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@googlegroups.com.
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.
No comments:
Post a Comment