[Dbix-class] Help with many to many relationship
RAPPAZ Francois
francois.rappaz at unifr.ch
Wed Apr 2 06:46:41 GMT 2014
How stupid I am... Thanks !
François
> -----Original Message-----
> From: Hailin Hu [mailto:i at h2l.name]
> Sent: mercredi, 2. avril 2014 08:20
> To: DBIx::Class user and developer list
> Subject: Re: [Dbix-class] Help with many to many relationship
>
> Abo.pm
> __PACKAGE__->has_many( abojrnabt => 'Dbc::Jrnabt', {'foreign.noabt'
> => 'self.noabt'});
>
> is supposed to be
>
> Abo.pm
> __PACKAGE__->has_many( abojrnabt => 'Dbc::Schema::Result::Jrnabt',
> {'foreign.noabt' => 'self.noabt'});
>
> http://search.cpan.org/~ribasushi/DBIx-Class-
> 0.08270/lib/DBIx/Class/Relationship.pm
>
> On Wed, Apr 2, 2014 at 2:53 PM, RAPPAZ Francois
> <francois.rappaz at unifr.ch> wrote:
> > The Schema.pm and Schema folder are in a Dbc folder. The Schema.pm
> has
> > package Dbc::Schema
> >
> > The Result Folder in Schema folder holds the tables modules, for
> > example Jrnabt.pm has package Dbc::Schema::Result::Jrnabt
> >
> > When I fetch data from another table without using relationship, for
> > example
> >
> > my $s = Dbc::Schema->connect(
> > $dsn,
> > $cfg->get_usr,
> > $cfg->get_psw,
> > {
> > PrintError => 0,
> > RaiseError => 1,
> > AutoCommit => 1,
> > mysql_enable_utf8=>1
> > }
> > );
> > my $rs = $s->resultset('Ed')->search_rs( undef, {order_by => ['nom']}
> > );
> >
> > while (my $ed = $rs->next){
> > print $ed->nom , "\n";
> > }
> >
> > It works
> >
> > François
> >
> >> -----Original Message-----
> >> From: Hailin Hu [mailto:i at h2l.name]
> >> Sent: mercredi, 2. avril 2014 04:14
> >> To: DBIx::Class user and developer list
> >> Subject: Re: [Dbix-class] Help with many to many relationship
> >>
> >> Show up the folder structure and the actual package names.
> >>
> >> On Wed, Apr 2, 2014 at 12:09 AM, RAPPAZ Francois
> >> <francois.rappaz at unifr.ch> wrote:
> >> > Hi
> >> >
> >> > I have two tables Abo (primary key: noabt) and Jrn (primary key:
> >> nofm)
> >> > join by a linking table jrnabt (primary keys: nofm, noabt)
> >> >
> >> > I have defined the relationship as
> >> >
> >> > Abo.pm
> >> > __PACKAGE__->has_many( abojrnabt => 'Dbc::Jrnabt',
> {'foreign.noabt'
> >> > => 'self.noabt'});
> >> >
> >> > Jrn.pm
> >> > __PACKAGE__->has_many(jrnjrnabt => 'Dbc::Jrnabt',
> {'foreign.nofm'
> >> =>
> >> > 'self.nofm'});
> >> >
> >> > Jrnabt.pm
> >> >
> >> > __PACKAGE__->belongs_to(jrnabtjrn => 'Dbc::Jrn', {'foreign.nofm'
> >> > => 'self.nofm'}); __PACKAGE__->belongs_to(jrnabtabo => 'Dbc::Abo',
> >> > {'foreign.noabt' => 'self.noabt'});
> >> >
> >> > When I try
> >> > my $rs = $schema->resultset('Abo')->search_rs({'abojrnabt.nofm' =>
> >> > '1'}, {join => 'abojrnabt'});
> >> >
> >> > I got
> >> > DBIx::Class::Schema::source(): Can't find source for Dbc::Jrnabt
> at
> >> > U:\docs\perl\dokpe_i01_dbc\testdbc.pl line 62
> >> >
> >> > What am I missing ?
> >> >
> >> > Thanks
> >> >
> >> > François Rappaz
> >> >
> >> > Centre de documentation de la Faculté des Sciences Université de
> >> > Fribourg DokPe - Dokumentationszentrum der Naturwissenschaftlichen
> >> > Fakultät Universität Freiburg Pérolles CH-1700 Fribourg
> Switzerland
> >> > http://www.unifr.ch/dokpe/
> >> > Tel.: 41 (0)26 300 92 60
> >> > Fax.: 41 (0)26 300 97 30
> >> >
> >> >
> >> >
> >> > _______________________________________________
> >> > List: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class
> >> > IRC: irc.perl.org#dbix-class
> >> > SVN: http://dev.catalyst.perl.org/repos/bast/DBIx-Class/
> >> > Searchable Archive:
> >> > http://www.grokbase.com/group/dbix-class@lists.scsys.co.uk
> >>
> >> _______________________________________________
> >> List: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class
> >> IRC: irc.perl.org#dbix-class
> >> SVN: http://dev.catalyst.perl.org/repos/bast/DBIx-Class/
> >> Searchable Archive: http://www.grokbase.com/group/dbix-
> >> class at lists.scsys.co.uk
> >
> > _______________________________________________
> > List: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class
> > IRC: irc.perl.org#dbix-class
> > SVN: http://dev.catalyst.perl.org/repos/bast/DBIx-Class/
> > Searchable Archive:
> > http://www.grokbase.com/group/dbix-class@lists.scsys.co.uk
>
> _______________________________________________
> List: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class
> IRC: irc.perl.org#dbix-class
> SVN: http://dev.catalyst.perl.org/repos/bast/DBIx-Class/
> Searchable Archive: http://www.grokbase.com/group/dbix-
> class at lists.scsys.co.uk
More information about the DBIx-Class
mailing list