I am sure that this answer is exactly what I am looking for to solve a 
problem I am having. However, I don't quite understand the particulars. 
Vincenzo, could you please provide an example of the queries used here to 
get the movie linked up with the genre. Maybe some code? 

On Saturday, July 28, 2012 5:25:33 PM UTC-4, Vincenzo Ampolo wrote:
>
> On 07/28/2012 03:38 AM, Alec Taylor wrote: 
> > Vincenzo: Have you looked at: https://github.com/niphlod/w2p_tvseries 
>
> What is that ? I can't figure out from the "objectives" section what 
> that application does... 
>
> On 07/28/2012 05:37 AM, Cliff Kachinske wrote:> You need to define a set 
> that includes all three tables in the relation. 
> > 
> > ((db.genres.id==db.movies_genres.genres_id) & 
> > (db.movies_genres.movie_id==db.movies.id)) 
> > 
> > To get the set of genres for a specific movie, do 
> > 
> > | 
> > ((db.genres.id==db.movies_genres.genres_id)& 
> > (db.movies_genres.movie_id==db.movies.id)& 
> > (db.movies.id==1))# or whatever variable you like 
> > | 
> > 
> > 
> > Notice this query allows you to retrieve information from all three 
> > tables at one time. 
>
> Which is exactly like the web2py books suggests. Btw to retrieve all the 
> information of a movie in one shot (so join movie with genres with casts 
> with pictures) may be really database intense (3 joins!) So after a bit 
> of hacking I figured out a simply way to accomplish the same goal: 
>
> web2py automatically add the many-to-many sets to an instance with the 
> same name of the relation table. In my case I've movie.movies_genres for 
> each movie. Given so I can easily get the genres of a movie in a 
> template just doing. 
>
> In [36]: for m in movie.movies_genres.select(): print m.genre.name 
> Thriller 
>
> Best Regards, 
>
> -- 
> Vincenzo Ampolo 
> http://vincenzo-ampolo.net 
> http://goshawknest.wordpress.com 
>

-- 



Reply via email to