[Catalyst] Re: Simple session snag probably -- "Couldn't find a model named Learn::Session"

will trillich will.trillich at serensoft.com
Mon Aug 12 02:13:09 GMT 2013


Ah thanks for the clue-stick :) Hailin --

We had messed up on the CREATE phase in getting the Schema set up, and it
was the two-schema approach that tripped us cuz we weren't paying attention:

script/learn_create.pl model DB DBIC::Schema Learn::Schema::DB
create=3Dstatic dbi:mysql:learn user pw
script/learn_create.pl model DB DBIC::Schema Learn::Schema::Auth
create=3Dstatic dbi:mysql:auth user pw

Those are the two commands we had issued to create the model. Whoops! The
first was okay but the second used the exact same second-argument and
shouldn't have.

That is, the second command overwrote the first instance under
Learn::Model::DB. The following fixed it:

script/learn_create.pl model DB DBIC::Schema Learn::Schema::DB
create=3Dstatic dbi:mysql:learn user pw
script/learn_create.pl model Auth DBIC::Schema Learn::Schema::Auth
create=3Dstatic dbi:mysql:auth user pw

Changing "DB" to "Auth" in the second arg, and now all is well.

Thanks!



On Sunday, August 11, 2013, Hailin Hu wrote:

> How is your model like?
>
> I suppose you map your schema and model as below:
> Learn::Schema::Auth -> Learn::Model::Auth
>
> Then Auth::Session should work.
> Use the name of model instead of schema in context of catalyst.
>
> Hope it helps.
>
> On Sun, Aug 11, 2013 at 6:10 AM, will trillich
> <will.trillich at serensoft.com> wrote:
> > Starting a new app, and winding up with the "Couldn't load class (Learn)
> > because: Couldn't find a model named Learn::Session" error...
> >
> > We have two schema:
> > - Learn::Schema::Auth (users, roles, sessions, etc)
> >     Auth.pm extends 'DBIx::Class::Schema', as expected
> > - Learn::Schema::DB (real app data here)
> >     Learn.pm extends 'DBIx::Class::Schema', as expected
> >
> > We are intending to store session info in
> > Learn::Schema::Auth::Result::Session.
> >
> > learn.conf includes:
> >
> > <session>
> >     dbic_class     =3D Learn::Session
> > </session>
> >
> > We've done other Catalyst apps with this pattern and they work just fin=
e.
> > (Blah::Session never really exists on its own, Blah::Model::Blah::Sessi=
on
> > doesn't either, but Blah::Schema::DB::Result::Session does and there
> seems
> > to be a bit of magic in converting Blah::Session into
> > Blah::Schema::DB::Result::Session.)
> >
> > Without <session>dbic_class</> in learn.conf, the error message changes
> to
> > "Couldn't find a model named DBIC::Session" as expected.
> >
> > What's missing here? Something obvious no doubt...
> >
> >
> >
> > Or, how do we specify "Learn::Schema::DB::Result::Session" for our
> session
> > data, using dbic_class in the conf file?
> >
> >
> > _______________________________________________
> > List: Catalyst at lists.scsys.co.uk
> > Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
> > Searchable archive:
> http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
> > Dev site: http://dev.catalyst.perl.org/
> >
>
> _______________________________________________
> List: Catalyst at lists.scsys.co.uk
> Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
> Searchable archive:
> http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
> Dev site: http://dev.catalyst.perl.org/
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.scsys.co.uk/pipermail/catalyst/attachments/20130811/36e98=
548/attachment.htm


More information about the Catalyst mailing list