Tuesday, April 5, 2011

[Rails] Re: Rails 3.0.5 gives SQLite3::SQLException for the same code that works on 3.0.3

On Apr 5, 12:48 pm, WSzP <c...@ctdd.ro> wrote:
> Hello,
> I recently updated Rails to 3.0.5. The very same code that worked on
> 3.0.3 now gives error.
> The code is:
> def kategorialista
>   Kategoria.where(:elfogadva => TRUE).order("nev").collect {|s|
> [s.nev, s.sefuri]}
> end
>
> It is in application_controller.rb with
>  helper_method :kategorialista
>
> The error it gives on 3.0.5:
> SQLite3::SQLException: no such table: kategoria: SELECT "kategoria".*
> FROM "kategoria" WHERE "kategoria"."elfogadva" = 't' ORDER BY nev
>
> Obviously there is no such table as kategoria, but there is
> „kategorias" table in SQLite.
>
> The relevant part of the schema, as generated:
>
> create_table "kategorias", :force => true do |t|
>     t.string   "nev"
>     t.string   "leiras"
>     t.boolean  "elfogadva",  :default => false
>     t.string   "sefuri"
>     t.datetime "created_at"
>     t.datetime "updated_at"
> end
>
> Long story short: what was changed, and how to make my code work? And
> why this is not mentioned in changelogs?

Looks like the inflection rules were tweaked leading rails (https://
github.com/rails/rails/commit/e925acb8 ) to think that kategoria is
pluralized to kategoria (ie that it's already a plural, like stadia).
The best thing is probably to add an inflection rule to pluralize
kategoria to kategorias.

Fred
>
> Thanks a lot,
> WSzP

--
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.

0 Comments:

Post a Comment

Subscribe to Post Comments [Atom]

<< Home


Real Estate