This project is archived and is in readonly mode.
Add magic encoding comment to generated files
Reported by Xavier Noria | August 19th, 2008 @ 11:54 PM | in 2.x
This is a patch related to this thread in rubyonrails-core.
In a has many association count_records
basically counts by SQL. If there are no children in the database it assumes that's enough to say there are no children at all. That's not necessarily the case because the association could have new records in @target.
There are several ways to observe this behaviour, for example rendering a collection that has only new records (via #build) would render nothing at all.
This minimal test depicts the issue as well:
post = Post.create
post.comments.build
post.comments.size # => 1
post.comments.size # => 0
The fix turns out to be simple. I've added a regression test as well.
The documentation I mention in a comment will eventually be merged from this patch in docrails.
Comments and changes to this ticket
-
Xavier Noria August 20th, 2008 @ 12:22 AM
Patch updated with Fred's proposal. That one is better because we certainly can assert
loaded
anyway. -
Frederick Cheung August 20th, 2008 @ 11:33 AM
Looks good to me, tests pass. Perhaps the assert should assert that the size is 1 (or is that already covered by existing tests ?
-
Xavier Noria August 20th, 2008 @ 11:55 AM
Yeah, the test assumes size1 is correct because there are unit tests for #size in test_build and test_collection_size_after_building.
-
Tarmo Tänav August 20th, 2008 @ 06:49 PM
I don't think it's necessary to refer to google groups threads in a comment. Either explain the issue in a comment (if it really needs explaining) or don't add a comment. When the patch is commited the added code will already be tied to the commit (git annotate) which will refer to this ticket which already refers to the google groups thread.
Other than that, +1
-
Repository August 21st, 2008 @ 03:51 PM
- State changed from new to resolved
(from [a970f916fb1e05376733e2d42d9bcc2b873af355]) Fix has_many#count_records. [#865 state:resolved]
Signed-off-by: Pratik Naik pratiknaik@gmail.com http://github.com/rails/rails/co...
-
Repository August 25th, 2008 @ 09:31 AM
(from [0048f558e69cfc2675552dd31ea773b2b8271e9b]) Fix has_many#count_records. [#865 state:resolved]
Signed-off-by: Pratik Naik pratiknaik@gmail.com http://github.com/rails/rails/co...
Create your profile
Help contribute to this project by taking a few moments to create your personal profile. Create your profile »
<h2 style="font-size: 14px">Tickets have moved to Github</h2>
The new ticket tracker is available at <a href="https://github.com/rails/rails/issues">https://github.com/rails/rails/issues</a>
People watching this ticket
Attachments
Referenced by
- 865 fix count_records (from [a970f916fb1e05376733e2d42d9bcc2b873af355]) Fix has...
- 865 fix count_records (from [0048f558e69cfc2675552dd31ea773b2b8271e9b]) Fix has...