thanks - but how does that query specify a town?

It seems like that would just return true if the current user had any
town relationships? Or am I reading it wrong?


On Sep 19, 5:46 pm, Michael Bayer <mike...@zzzcomputing.com> wrote:
> On Sep 19, 2009, at 11:41 AM, joeformd wrote:
>
>
>
> > When we tried that it made a sql query to get all the towns (towns are
> > loaded lazily) - that could be an awful lot of information, so this
> > would be a much faster query
>
> so, the most succinct (and efficient) query of all is
>
> session.scalar(exists().where(user_towns.c.user_id==current_user.id))
>
> should return True/False right back
>
>
>
>
>
> > On Sep 19, 4:33 pm, Michael Bayer <mike...@zzzcomputing.com> wrote:
> >> On Sep 19, 2009, at 10:19 AM, joeformd wrote:
>
> >>> Thanks for the speedy response Michael,
>
> >>> we came up with this:
>
> >>>  current_user_has_town = bool(session.query(User).filter
> >>> (User.id==current_user.id).filter(User.towns.contains
> >>> (current_user)).count())
>
> >>> which maybe has slightly clearer intent?
>
> >> if you already have the current_user, why not just say "town in
> >> current_user.towns"
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalchemy@googlegroups.com
To unsubscribe from this group, send email to 
sqlalchemy+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to