>It will be available in the next point release we do from the 2.2
>branch (2.2.3) hopefully that will come out relatively soon as there's
>a few fixes piled up.
>
>On Wed, Jan 14, 2009 at 6:22 AM, Antoine <[email protected]> wrote:
>>
>>  Thank you Ben for your answer ;-)
>>  Do you know when the patch will be available in rails ?
>>
>>  Best regards ;-)
>>
>>  Antoine
>>
>>
>>  On Jan 13, 2:44 am, Eloy Duran <[email protected]> wrote:
>>>  Ah sorry, I shouldn't have assumed edge. My bad.
>>>  Thanks Ben
>>>
>>>  - Eloy
>>>
>>>  On Jan 12, 2009, at 8:30 PM, Ben Symonds wrote:
>>>
>>>
>>>
>>>  > This looks likehttp://rails.lighthouseapp.com/projects/8994/tickets/1530
>>>  > (where the test Eloy mentions was added).
>>>
>>>  > That patch has not been released yet, which is probably why Antoine is
>>>  > seeing it.
>>>
>>>  > Ben
>>>
>>>  > -----Original Message-----
>>>  > From: [email protected]
>>>  > [mailto:[email protected]] On Behalf Of Eloy Duran
>>>  > Sent: 12 January 2009 18:06
>>>  > To: [email protected]
>>>  > Subject: [Rails-core] Re: tracking_attribute_changes and using default
>>>  > checkbox form in the view
>>>
>>>  > I checked the test cases (dirty_test.rb), and it contains a test for
>>>  > this specifically which passes at least on my env.
>>>
>>>  >   def test_nullable_integer_zero_to_string_zero_not_marked_as_changed
>>>  >     pirate = Pirate.new
>>>  >     pirate.parrot_id = 0
>>>  >     pirate.save!
>>>  >     # other tests
>>>  >     pirate.parrot_id = '0'
>>>  >     assert !pirate.changed?
>>>  >   end
>>>
>>>  > Could you check this as well, and otherwise try to extract a small
>>>  > piece of code, into a test or sample app, which shows the behaviour?
>>>  > If you do so, please file a ticket.
>>>
>>>  > - Eloy
>>>
>>>  > On 12 jan 2009, at 17:27, Antoine wrote:
>>>
>>>  >> You are right, I have a check box helper (by default, it's sending 0
>>>  >> or 1 );-) and also my checkbox  is represented in my database by an
>>>  >> integer ==> 0  means unchecked , 1 means check.
>>>
>>>  >> So my form is sending 0 because my checkbox is unchecked and before
>>>  >> sending, the attribute of the object had the same value 0 (I checked
>>>  >> in the database to be sure)
>>>
>>>  >> So I don't understand why rails tell me the state of this attribute
>>>  >> change ? because the attribute is not changing ... 0 ==> 0
>>>
>>>  >> Best regards,
>>>  >> Antoine
>>>
>>>  >> On Jan 12, 11:18 am, Eloy Duran <[email protected]> wrote:
>>>  >>> Sorry, I forgot to add the most important part :)
>>>
>>>  >>> What might be happening is that you have a default value of nil
>>>  >>> (NULL)
>>>  >>> which is then changed to an empty string "". Because the browser
>>>  >>> sends
>>>  >>> a value because of the gotcha workaround.
>>>
>>>  >>> So the easiest solution would be to have a default value for the
>>>  >>> field.
>>>  >>> Which is something you want to have anyways for a boolean field IMO.
>>>
>>>  >>> - Eloy
>>>
>>>  >>> On Jan 12, 2009, at 5:14 PM, Eloy Duran wrote:
>>>
>>>  >>>> Hi,
>>>
>>>  >>>> This was probably because you used the check_box helper, which
>>>  >>>> makes
>>>  >>>> sure the browser always sends a value.
>>>  >>>> See the documentation for the check_box helper:
>>>
>>>  >>>> === Gotcha
>>>
>>>  >>>> The HTML specification says unchecked check boxes are not
>>>  >>>> successful, and thus web browsers do not send them. Unfortunately
>>>  >>>> this introduces a gotcha: if an Invoice model has a paid flag, and
>>>  >>>> in the form that edits a paid invoice the user unchecks its check
>>>  >>>> box, no paid parameter is sent. So, any mass-assignment idiom like
>>>  >>>> @invoice.update_attributes(params[:invoice])
>>>  >>>> wouldn't update the flag.
>>>  >>>> To prevent this the helper generates a hidden field with the same
>>>  >>>> name as the checkbox after the very check box. So, the client
>>>  >>>> either
>>>  >>>> sends only the hidden field (representing the check box is
>>>  >>>> unchecked), or both fields. Since the HTML specification says key/
>  >> >>>> value pairs have to be sent in the same order they appear in the
>>>  >>>> form and Rails parameters extraction always gets the first
>>>  >>>> occurrence of any given key, that works in ordinary forms.
>>>
>>>  >>>> - Eloy
>>>
>>>  >>>> On Jan 12, 2009, at 5:05 PM, Antoine wrote:
>>>
>>>  >>>>> Dear all,
>>>
>>>  >>>>> Maybe i wasn't so clear, excuse me for my english ;-)
>>>
>>>  >>>>> My problem is simple ..
>>>  >>>>> I didn't change the value of my checkboxes in my form but the core
>>>  >>>>> function of rails was saying that the values currently change !
>>>  >>>>> and
>>>  >>>>> that's why rails update the values in mysql... and also return a
>>>  >>>>> wrong
>>>  >>>>> information if i use the new fontions like : attributes_change,
>>>  >>>>> attribute_changed?...
>>>
>>>  >>>>> I don't understand why ?
>>>
>>>  >>>>> thank you for your help !
>>>  >>>>> Antoine
>>>
>>>  >>>>> On Jan 8, 3:39 pm, Antoine <[email protected]> wrote:
>>>  >>>>>> Dear all,
>>>
>>>  >>>>>> I get a stupid bug and i don't know if there is something wrong
>>>  >>>>>> in
>>>  >>>>>> rails or if it is me doing a stupid thing.
>>>
>>>  >>>>>> I have a checkbox called (ass_tg) in my form and when i saved my
>>>  >>>>>> form , i write in my model:
>>>
>>>  >>>>>> before_save :test
>>>
>>>  >>>>>> def test
>>>  >>>>>>   puts "-----------------------"
>>>  >>>>>>   puts ass_tg_change
>>>  >>>>>>   puts "-------------------------"
>>>  >>>>>> end
>>>
>>>  >>>>>> I should have a nil answer but I get  in my console :
>>>
>>>  >>>>>> -----------------------
>>>  >>>>>> 0
>>>  >>>>>> 0
>>>  >>>>>> -------------------------
>>>
>>>  >>>>>> And I have this attributes save in the SQL log ..(I didn't change
>>>  >>>>>> the
>>>  >>>>>> status of the checkbox ...)
>>>
>>>  >>>>>> UPDATE `companies` SET .... `ass_tg` = 0,...... WHERE `....
>>>
>>>  >>>>>> It seems like rails don't like integer attributes equal to 0
>>>  >>>>>> when it
>>>  >>>>>> execute all the change functions  (change, changed?, was ...) ??
>>>
>>>  >>>>>> Best regards,
>>>
>>>  >>>>>> Thank you for your help,
>>>  >>>>>> Antoine
>>  >
>>
>
>
>
>--
>Cheers
>
>Koz
>
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Core" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-core?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to