I have two tables joined by a "belongs to" and a "has many" relationship Ddref idref iduser finished created n n--------------+ ^ ¦ ¦ ¦RefUser (bt iduser) ¦UserRef (hm) ¦ ¦ ¦ 1 1<------------+ Dduser iduser email id_credit
idref is a primary key for Ddref iduser is a pk for Dduser In Dduser.pm __PACKAGE__->belongs_to(RefUser=> 'Dbc::Schema::Result::Dduser', {'foreign.iduser' => 'self.iduser'}); In Dduser.pm __PACKAGE__->has_many(UserRef => 'Dbc::Schema::Result::Ddref', {'foreign.iduser' => 'self.iduser'}); I would like to update the field id_credit in Ddref : my $href2 = { '+select' => [ 'RefUser.id_credit', 'RefUser.email'], '+as' => [qw/id_credit email/], order_by => 'created', join => ['RefUser']}; my $href = {idref => 24 }; my $rs1 = $s->resultset('Ddref')->search_rs($href, $href2); my $row = $rs1->single; $row->set_column('id_credit' => 28); $row->update(); But update fails with since the sql is UPDATE ddrefs SET id_credit = ? WHERE ( idref = ? )" with ParamValues: 0=28, 1='24' Obviously the join is lost. What am I missing ? Thanks François _______________________________________________ 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