update query

I’m not sure why I’m getting this… I’m trying to update a product in the ruby console (and tried it within my app).

Product.update(122, :funded => true)

Product Load (1.6ms) SELECT “products”.* FROM “products” WHERE “products”.“id” = ? LIMIT 1 [[“id”, 122]]

** (0.1ms)** SAVEPOINT active_record_1

Commontator::Thread Load (1.6ms) SELECT “commontator_threads”.* FROM “commontator_threads” WHERE “commontator_threads”.“commontable_id” = ? AND “commontator_threads”.“commontable_type” = ? LIMIT 1 [[“commontable_id”, 122], [“commontable_type”, “Product”]]

** (0.1ms)** ROLLBACK TO SAVEPOINT active_record_1

NoMethodError: undefined method `Startdate’ for #Product:0x007f9588a84330

Did you mean? startdate

           startdate?

           startdate=

           startdate_was

           startdate_change

           startdate_changed?

           Startdate=

from /Users/joeguerra/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/activemodel-4.2.5/lib/active_model/attribute_methods.rb:433:in `method_missing’

``

At one point my table for product had a ‘Startdate’ column, but I ran a migration to change that column to all lowercase.

any ideas?

Note that “Startdate=” remains as a suggested alternative. I’d start by searching your code for the case-sensetive ‘Startdate’

-Rob

If I’m running the command in the console why would it look thru my code?

If I'm running the command in the console why would it look thru my code?

Because when you type
Product.update(..)
it uses code from your model to know what to do.

Colin

ok , I found and corrected it in my model and can’t locate any other files that might have the wrong syntax.

Is there no way for rails to pinpoint where it’s looking when it crash?

ok, for some reason now it works? maybe I needed to restart the console after i made changes to my code.

ok, for some reason now it works? maybe I needed to restart the console after i made changes to my code.

Yes. In development mode, the Web view does the live reload at each request (of most things -- config files in the config/initializers directory often require a full stop and start of the dev server). But the console needs to either have the reload! command issued, or the whole console stopped and started again (the latter is 100%, while the former can fail in difficult-to-diagnose ways).

Walter