[Dbix-class] Many-to-many with attributes
    Jonathan Tweed 
    jonathan at tweed.name
       
    Sun Nov 27 22:14:42 CET 2005
    
    
  
On 26 Nov 2005, at 21:23, Matt S Trout wrote:
> On Sat, Nov 26, 2005 at 12:06:19PM +0000, Jonathan Tweed wrote:
>> Hi List
>>
>> I'm trying to create a many-to-many mapping with attributes on the
>> join table. I've got the many-to-many bit working, but can't figure
>> out how to get at the attributes. My current attempt is as follows:
>>
>> <snip>
>
> The above changes means that you'll get a ListSubscriber object  
> back but
> $ls->email and ->id will be proxied through to the Subscriber  
> object (which
> will already have been grabbed by the prefetch). You can still call
> $ls->subscriber->email if required though.
Thanks Matt, that works really well. I can see no mention of either  
prefetch or proxy in the documentation so I'd never have figured it  
out on my own.
One question. Why does my original attempt not work? It seems more  
obvious to me, and indeed it is just an extension of the many-to-many  
example in the docs. The SQL that is generated is correct, but the  
columns are not being exposed in the result set, even when I  
specifically ask for them. As DBIx::Class is supposed to be result  
set rather than table oriented, why is this?
>> Thanks for any help, I'm an ex Class::DBI user but very new to
>> DBIx::Class and so far I'm impressed. When I get this working I'll
>> add an example to the wiki.
>
> That'd be much appreciated.
I'll get on it. I'll add to it when I figure out adding, updating and  
deleting.
Thanks
Jonathan
    
    
More information about the Dbix-class
mailing list