[Catalyst] Re: class mapping

Sung Gong sung at bio.cc
Wed Mar 14 00:42:38 GMT 2012


Problem solved with a kind help from Gshank (http://search.cpan.org/~gshank/)

Just copied the email in below:

----
Brilliant!
You are my star - this simply works!

[sung at cardiodb ~]$ moose-outdated -v
Conflicts detected for Moose:
 MooseX::NonMoose is version 0.16, but must be greater than version 0.17
[sung at cardiodb ~]$ cpanm MooseX::onMoose
...
[sung at cardiodb ~]$ perl -e 'use MooseX::NonMoose; print
MooseX::NonMoose->VERSION'
0.22

Don't come to London, but seeing me - owe you an authentic glass of ale.

Will post this on dbix-class mailing list - can you do HFH so people
can save some time?

Cheers and all the best,
Sung



On 13 March 2012 20:47, Gerda Shank <gerda.shank at gmail.com> wrote:
> Here's something you can try: run 'moose-outdated' from the command line.
> Somebody in the DBIx::Class irc channel had a similar sort of failure
> recently, and it was because MooseX::NonMoose needed to be updated.
>
> Gerda
>
>

On 13 March 2012 16:33, Sung Gong <sung at bio.cc> wrote:
> Hi
>
> I have a simple User table (mysql back-end) which is mapped into a
> resultsource class User.pm. statically generated by the helper.
>
> Just wondering any difference between
> "MyApp::Schema::DB::Result::User" and "MyApp::Model::DB::User"?
>
> Both ref($c->model("DB::User")->find(1)) and
> ref($c->model("NECTAR::User")->new_result({})) return
> MyApp::Model::DB::User.
> Is this normally what I expect? (or MyApp::Schema::DB::Result::User)
>
> One more question re the method 'new_result' of DBIx::Class::ResultSet:
> I found $c->model("DB::User")->new_result({})->result_source->schema->storage
> returns undef, whereas
> $c->model("DB::User")->find(1)->result_source->schema->storage doesn't
> (it shows DBIx::Class::Storage::DBI::mysql=HASH(0x1f21fdc0)).
> Is this also sane?
>
> Initially those questions were raised while using HTML::FormHandler -
> modifying an existing user (e.g. ->find(1)) works well, whereas
> creating a new user (->new_result) triggers some error messages:
> can't call method "insert" on an undefined value at
> /home/sung/perl5/lib/perl5/DBIx/Class/Row.pm line 351
> ...
> DBIx::Class::Storage::txn_do('undef', 'undef') called at
> /home/sung/perl5/lib/perl5/DBIx/Class/Storage/DBI.pm line 807
>
> Anyone can help on this?
> https://github.com/sung/Nectar-debug
>
> Cheers,
> Sung



More information about the Catalyst mailing list