I ask this because I have a form with a radio button set to nil :
= f.radio_button :estimate_type, nil
I have debugger right at the beginning of my method call :
def create
debugger
When I hit the debugger, I check out my params, and they say the value is on not nil.
Enter Insanity wolf. Somehow this is getting converted on click. And I’ve scoured the entire app looking for possibly a leaky javascript file, or anything closely resembling the word ‘on’. I’ve checked all my bases. Defaults in schema.rb, jquery click events, model validations, you name it. Nothing with the word “on” anywhere.
So the real question is, is there a way I can throw a debugger in a place in which if I were to click submit, the debugger would appear before the model validation, and then hopefully where the params are still what they are in the form. And then I can follow it down the trail and see where it goes wrong.
It doesn’t have anything to do with your JavaScript. This is something that I’ve experienced before as well, but I’m not sure why it converts nil to ‘on’. I do know that passing in
:nilas a symbol returns a null string, as well as just simply passing infalse.