Dear Daniel & Dave

Thank You all, now i understand, and tried "$hrsz_res->[-1]->id" and works as i expected!
:)
It is a very valuable mail-list, thanks to You!

Csaba Hetenyi

2015.09.10. 20:16 keltezéssel, Dave Cross írta:
On 10/09/15 19:04, Hetényi Csaba wrote:
Dear friends

Sorry for newbie question!
I'd like to know, how to get the last inserted row's primary key after a
populate?
I have the following code in a Catalyst app (it inserts data to related
tables too, but in the main table: FoldkHrsz only one row):

# DB Populate
my $hrsz_res = $c->model('DB::FoldkHrsz')->populate([
         {
         %$hrsz_data,
         foldk_alreszlets => \@$alreszlet_AoH,
      foldk_szeljegyzetts => \@$szeljegyzett_adat_AoH,
      foldk_szolgalmis => \@$szolgalmi_adat_AoH,
      foldk_tulajs => \@$tulaj_adat_AoH,
      foldk_jogok_tenyeks => \@$jogok_tenyek_adat_AoH
        },
     ]);

After this, if i try to get the last inserted row's PK with this:

$hrsz_res->id;

..gives an error:
"Can't call method "id" on unblessed reference at ..."

I know, that the populate method's result is:
\@result_objects (scalar context) | @result_objects (list context)
but don't know, how to use them?

You're calling populate() in scalar context, so you're getting an array reference back. You want the first element in the referenced array.

  $hrsz->[0]->id;

But a better solution might be to call populate() in list context.

  my ($hrsz_res) = $c->model('DB::FoldkHrsz')->populate([ ... ]);

Then $hrsz_res will contain a row object which you can use in the way you were originally expecting.

  $hrsz->id;

hth,

Dave...


_______________________________________________
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@lists.scsys.co.uk

Reply via email to