Validation Problem

Hello-

I'm trying to do something pretty basic - validate a form field against a regex. Here's the line of my model that adds the validation:

validates_format_of :zipcode, :with => /\d{5}(-\d{4})?/, :message => 'is failing the regex'

When I enter the value "12345" into the form field, it comes back and tells me that "Zipcode is failing the regex". What's odd is that I've gotten sporadic success, where the validations will pass - sometimes with values that failed previously.

I feel confident of the regex itself and testing it in IRB yields the results I would expect. Once I use it in the validation, then it stops working.

Does anyone know what might be going on? Failing that, any ideas for where to start troubleshooting this would be appreciated.

Regards, Eric

Ah, I just figured it out!

As an aside, and I'm not sure if anyone else notices the same thing, but it seems like the easiest way for me to solve my own problem is to ask for help. Never fails.

The issue, in case someone else runs into it, was that I had accidentally created a new method on my class called "zipcode" (it returned a ZipCode object, where the zipcode is a string). Somehow, perhaps based on whether or not zipcode was set, the validation was using the string sometimes and the object the rest of the time (yes, yes, I know strings are objects too). This is why my results were erratic.

Regards, Eric