Rolf Schaufelberger wrote:
> Hi,
>
>> Rolf Schaufelberger wrote:
>>> Hi,
>>> I'm currently trying to move my application from CDBI to Dbix::Class.
>>>
>>> Now I have a many_to many relationship and I want to do a search on the
>>> related table as described in the pod. yet I get an errror:
>>>
>>> DBIx::Class::Relationship::Base::search_related(): No such relationship
>>> motive at t/05_format.t line 26
>>>
>>> yet, doing fetching all objects works for both directions,
>>>
>>> the lines are :
>>> PW::DB::Format.pm :
>>>
>>> ...
>>> __PACKAGE__->has_many(mformate => 'PW::DB::MFormat', 'format_id');
>>> __PACKAGE__->many_to_many('motive' => 'mformate', 'motiv_id');
>>>
>>>
>>> PW::DB::Motiv.pm :
>>> ...
>>> __PACKAGE__->has_many( mformate => 'PW::DB::MFormat', 'motiv_id');
>>> __PACKAGE__->many_to_many('formate' => 'mformate', 'format_id');
>> many-many is a bridge across two relationships.
>>
>> $obj->motive
>>
>> is pretty much equivalent to
>>
>> $obj->search_related('mformate')->search_related('motiv_id')
>
> Ok , so
>
> my $ap2 = $f->search_related('mformate')->search_related('motiv_id',
> {name=>'Airplane'});
>
> works.
>
> But according to the docs in Relationship.pm
> "..
> MyDB::Schema::Role->many_to_many('actors' => 'actorroles', 'actor');
> $schema->resultset('Role')->search_related('actors', { Name => 'Fred' });
> .."
Hmm, that may be a doc error
$role->actors->search({ Name => 'Fred' });
will work though - but the relname/mmname methods aren't carried up to the
resultset class to try and avoid collisions.
--
Matt S Trout Offering custom development, consultancy and support
Technical Director contracts for Catalyst, DBIx::Class and BAST. Contact
Shadowcat Systems Ltd. mst (at) shadowcatsystems.co.uk for more information
+ Help us build a better perl ORM: http://dbix-class.shadowcatsystems.co.uk/ +
_______________________________________________
List: http://lists.rawmode.org/cgi-bin/mailman/listinfo/dbix-class
Wiki: http://dbix-class.shadowcatsystems.co.uk/
IRC: irc.perl.org#dbix-class
SVN: http://dev.catalyst.perl.org/repos/bast/trunk/DBIx-Class/
Searchable Archive: http://www.mail-archive.com/[email protected]/