On 4 Sty, 07:30, Sam Walters <mr.sam...@gmail.com> wrote: > Hi Tomasz > Yes, i have followed a raw sql approach now im looking at my test data > to see which objects have multiple rows and cleaning that up. > > Its a shame that '__in' has limited use under these scenarios: > > directories = search_querySet.distinct() > addresses = Address.objects.filter(directory__in=directories) > addresses.values('directory__id', ..... *some other relevent fields*) > > this certainly allows me to select the related sets of addresses for > each directory however i need to be able to relate each address object > back to its directory (by id would be great) trying to get the > directory 'id' packaged in the values() gives me an error saying > invalid field even though 'directory' is listed as a valid field.
I'm not 100% sure, but AFAIR you can only take values of fields contained directly in models. > If i could do that then i could iterate through each dictionary and > zip related items together based on their directory id's or something > nice like that. > > " > Re those VIEWs, they are SELECTs with JOINs, which effectively > produce up to a few rows for single object (e.g. if you have person > with 3 phone numbers, > you're getting 3 rows), but it turns out to be much more efficient to > process/merge > that in Python code than to issue hundreds of SQL queries. > " > > Yes this seems to be the best way, do you have any links where i can > see how various people have implemented this? Would be good to write a > 'pythonic' solution > I wrote simple function that works for my purposes, I suspect that you use-case also doesn't require anything fancy, but I agree that 'pythonic' solutions are good for morale :-) -- Tomasz Zielinski http://pyconsultant.eu
-- You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-us...@googlegroups.com. To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-users?hl=en.