-
Notifications
You must be signed in to change notification settings - Fork 333
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
.each
called twice
#6
Comments
Thanks for the heads up, I will definitely check out how to fix this soon. |
I think this has been fixed, can you confirm if this still happens? |
Closing, re-open if you notice this in last version. |
just switched my project's bundle to the git version. the kicker now gets executed 3 times :-) |
That is awesomely bad. Can you help me with a simple test sample? I have two AR models: Users and Address and User has_one address. I created a bunch of users in AR and then did:
with users template:
and the logs show this:
I think I am doing the test wrong. Do you think this is criteria objects in mongoid specific? I do check |
no prob, here's a simple sample project that replicates the bug: http://cl.ly/231i0N0k2M1X0J0j3918 |
Also, I pushed to git version a new little hack that should fix it when you use the
instead of |
Thanks will try to come up with a better solution based on that test project. Can you confirm if on latest git rev that using collection solves it at least? |
cool, sounds good. i have a breakpoint in the rabl src code, tracing through it now. i'll let you know if i come up with anything |
Awesome thanks, would love to know the root cause of the three invocations. |
hmm, it might just be a mongoid issue
|
ok, looks like this is just a mongoid issue. it's executing a query whenever |
Yeah kicking on respond_to? is kind of sloppy, tempted to report the issue for mongoid. AR and DM act as you'd expect (no kick). Cleaned up the implementation of collection, I don't think it's that bad of an approach to fixing this for now. I kind of think it is a bit cleaner to declare the collection explicitly anyways. Thanks for your help. |
sort of a low priority bug, however I noticed that object @users will iterate over @users twice.
This is noticeable in ORMs that return criteria objects that execute the query on iteration (such as mongoid). So the query actually gets executed twice.
Probably something to watch for and maybe add a unit test for it at some point. Not a huge deal since I can do
to_a
on the object before rendering it to rabl.The text was updated successfully, but these errors were encountered: