[Catalyst] Newbie DB Schema/Moose Problem
John Napiorkowski
jjn1056 at yahoo.com
Fri Mar 16 14:22:08 GMT 2012
Scott,
I recall seeing this error before, and my gut feeling is you don't have com=
patible versions of the metioned libs. =A0A bit of google search gets me:
http://lists.scsys.co.uk/pipermail/catalyst/2011-December/028039.html
Which suggests some approaches.
However one thing I really recommend is to avoid using your 'system perl' (=
installed globally under /usr/bin). =A0This is really going to put you in a=
world of confusion. =A0The community best and supported practice for devel=
opment is to install a local perl using perlbrew and keep you dependency ch=
ain clean.
Here's some docs:=A0http://learn.perl.org/installing/
I realize it may feel like an un-needed step to install a user level Perl f=
or development, but believe me when I say it will make your life easier. =
=A0Following this method I very seldomly have trouble installing stuff from=
cpan.
John
>________________________________
> From: Scott Simpson2 <scott at simpzoid.com>
>To: catalyst at lists.scsys.co.uk =
>Sent: Friday, March 16, 2012 9:57 AM
>Subject: [Catalyst] Newbie DB Schema/Moose Problem
> =
>
> Hi, =
>=A0
>I am trying to develop my own application based on the tutorial ( Catalyst=
::Manual::Tutorial::03_MoreCatalystBasics) . I have created a mysql databas=
e and run: =
>=A0
>script/easyac_create.pl model DB DBIC::Schema EasyAC::Schema create=3Dstat=
ic dbi:mysql:ae:localhost user password
>=A0
>from which I get the following in, EasyAC\lib\EasyAC\Schema\Result\TSite.pm
>=A0
>use utf8; =
>package easyac::schema::result::tsite; =
># created by dbix::class::schema::loader =
># do not modify the first part of this file =
>=3Dhead1 name =
>easyac::schema::result::tsite =
>=3Dcut =
>use strict; =
>use warnings; =
>use moose; =
>use moosex::nonmoose; =
>use moosex::markasmethods autoclean =3D> 1; =
>extends 'dbix::class::core'; =
>=3Dhead1 components loaded =
>=3Dover 4 =
>=3Ditem * l<dbix::class::inflatecolumn::datetime> =
>=3Dback =
>=3Dcut =
>__package__->load_components("inflatecolumn::datetime"); =
>=3Dhead1 table: c<t_sites> =
>=3Dcut =
>__package__->table("t_sites"); =
>=3Dhead1 accessors =
>=3Dhead2 f_id =
>data_type: 'integer' =
>is_auto_increment: 1 =
>is_nullable: 0 =
>=3Dhead2 f_site_name =
>data_type: 'varchar' =
>is_nullable: 1 =
>size: 30 =
>=3Dhead2 f_start_date =
>data_type: 'date' =
>datetime_undef_if_invalid: 1 =
>is_nullable: 1 =
>=3Dhead2 f_mileage =
>data_type: 'smallint' =
>is_nullable: 1 =
>=3Dhead2 f_main_employer =
>data_type: 'tinyint' =
>is_nullable: 1 =
>=3Dcut =
>__package__->add_columns( =
>"f_id", =
>{ data_type =3D> "integer", is_auto_increment =3D> 1, is_nullable =3D> 0 }=
, =
>"f_site_name", =
>{ data_type =3D> "varchar", is_nullable =3D> 1, size =3D> 30 }, =
>"f_start_date", =
>{ data_type =3D> "date", "datetime_undef_if_invalid" =3D> 1, is_nullable =
=3D> 1 }, =
>"f_mileage", =
>{ data_type =3D> "smallint", is_nullable =3D> 1 }, =
>"f_main_employer", =
>{ data_type =3D> "tinyint", is_nullable =3D> 1 }, =
>); =
>=3Dhead1 primary key =
>=3Dover 4 =
>=3Ditem * l</f_id> =
>=3Dback =
>=3Dcut =
>__package__->set_primary_key("f_id"); =
>
># created by dbix::class::schema::loader v0.07017 @ 2012-03-16 12:24:06 =
># do not modify this or anything above! md5sum:thrgux1gf1pldhocjy15fq =
>
># you can replace this text with custom code or comments, and it will be p=
reserved on regeneration =
>__package__->meta->make_immutable; =
>1; =
>
> =
>When I try to start the development server I get:
>=A0
>Due to a method name conflict in roles 'CatalystX::Component::Traits' and =
'MooseX::Traits::Pluggable', the method '_find_trait' must be implemented o=
r excluded by 'Catalyst::Model::DBIC::Schema' at /usr/local/lib/perl/5.10.1=
/Moose/Meta/Role/Application/ToClass.pm line 134 =
>Moose::Meta::Role::Application::ToClass::check_required_methods('Moose::Me=
ta::Role::Application::ToClass=3DHASH(0xa733388)', 'Moose::Meta::Role=3DHAS=
H(0xa730830)', 'Moose::Meta::Class=3DHASH(0xa689110)') called at /usr/local=
/lib/perl/5.10.1/Moose/Meta/Role/Application.pm line 55 =
>Moose::Meta::Role::Application::apply('Moose::Meta::Role::Application::ToC=
lass=3DHASH(0xa733388)', 'Moose::Meta::Role=3DHASH(0xa730830)', 'Moose::Met=
a::Class=3DHASH(0xa689110)') called at /usr/local/lib/perl/5.10.1/Moose/Met=
a/Role/Application/ToClass.pm line 36 =
>Moose::Meta::Role::Application::ToClass::apply('Moose::Meta::Role::Applica=
tion::ToClass=3DHASH(0xa733388)', 'Moose::Meta::Role=3DHASH(0xa730830)', 'M=
oose::Meta::Class=3DHASH(0xa689110)', 'HASH(0xa7577f8)') called at /usr/loc=
al/lib/perl/5.10.1/Moose/Meta/Role.pm line 470 =
>Moose::Meta::Role::apply('Moose::Meta::Role=3DHASH(0xa730830)', 'Moose::Me=
ta::Class=3DHASH(0xa689110)') called at /usr/local/lib/perl/5.10.1/Moose/Ut=
il.pm line 160 =
>Moose::Util::_apply_all_roles('Moose::Meta::Class=3DHASH(0xa689110)', unde=
f, 'CatalystX::Component::Traits') called at /usr/local/lib/perl/5.10.1/Moo=
se/Util.pm line 99 =
>Moose::Util::apply_all_roles('Moose::Meta::Class=3DHASH(0xa689110)', 'Cata=
lystX::Component::Traits') called at /usr/local/lib/perl/5.10.1/Moose.pm li=
ne 67 =
>Moose::with('Moose::Meta::Class=3DHASH(0xa689110)', 'CatalystX::Component:=
:Traits') called at /usr/local/lib/perl/5.10.1/Moose/Exporter.pm line 370 =
>Moose::with('CatalystX::Component::Traits') called at /usr/local/share/per=
l/5.10.1/Catalyst/Model/DBIC/Schema.pm line 6 =
>require Catalyst/Model/DBIC/Schema.pm called at (eval 664) line 3 =
>eval 'require Catalyst::Model::DBIC::Schema =
>;' called at /usr/share/perl/5.10/base.pm line 90 =
>base::import('base', 'Catalyst::Model::DBIC::Schema') called at /home/scot=
t/Catalyst/EasyAC/lib/EasyAC/Model/DB.pm line 4 =
>EasyAC::Model::DB::BEGIN() called at /usr/local/share/perl/5.10.1/Catalyst=
/Model/DBIC/Schema.pm line 0 =
>eval {...} called at /usr/local/share/perl/5.10.1/Catalyst/Model/DBIC/Sche=
ma.pm line 0 =
>require EasyAC/Model/DB.pm called at /usr/local/share/perl/5.10.1/Catalyst=
/Utils.pm line 317 =
>eval {...} called at /usr/local/share/perl/5.10.1/Catalyst/Utils.pm line 3=
17 =
>Catalyst::Utils::ensure_class_loaded('EasyAC::Model::DB', 'HASH(0xa61eb10)=
') called at /usr/local/share/perl/5.10.1/Catalyst.pm line 2504 =
>Catalyst::setup_components('EasyAC') called at /usr/local/share/perl/5.10.=
1/Catalyst.pm line 1162 =
>Catalyst::setup('EasyAC') called at /home/scott/Catalyst/EasyAC/lib/EasyAC=
.pm line 57 =
>require EasyAC.pm called at /usr/local/share/perl/5.10.1/Module/Runtime.pm=
line 317 =
>Module::Runtime::require_module('EasyAC') called at /usr/local/share/perl/=
5.10.1/Class/Load.pm line 177 =
>Class::Load::__ANON__() called at /usr/local/share/perl/5.10.1/Try/Tiny.pm=
line 71 =
>eval {...} called at /usr/local/share/perl/5.10.1/Try/Tiny.pm line 67 =
>Try::Tiny::try('CODE(0x9eb2ad8)', 'Try::Tiny::Catch=3DREF(0x9a24648)') cal=
led at /usr/local/share/perl/5.10.1/Class/Load.pm line 183 =
>Class::Load::try_load_class('EasyAC', undef) called at /usr/local/share/pe=
rl/5.10.1/Class/Load.pm line 38 =
>Class::Load::load_class('EasyAC') called at /usr/local/share/perl/5.10.1/C=
atalyst/ScriptRole.pm line 83 =
>Catalyst::ScriptRole::_run_application('Catalyst::Script::Server=3DHASH(0x=
9eb2be8)') called at /usr/local/share/perl/5.10.1/Catalyst/Script/Server.pm=
line 239 =
>Catalyst::Script::Server::run('Catalyst::Script::Server=3DHASH(0x9eb2be8)'=
) called at /usr/local/share/perl/5.10.1/Catalyst/ScriptRunner.pm line 50 =
>Catalyst::ScriptRunner::run('Catalyst::ScriptRunner', 'EasyAC', 'Server') =
called at script/easyac_server.pl line 8 =
>Compilation failed in require at (eval 664) line 3. =
>...propagated at /usr/share/perl/5.10/base.pm line 93. =
>BEGIN failed--compilation aborted at /home/scott/Catalyst/EasyAC/lib/EasyA=
C/Model/DB.pm line 4. =
>Compilation failed in require at /usr/local/share/perl/5.10.1/Catalyst/Uti=
ls.pm line 317. =
>Compilation failed in require at /usr/local/share/perl/5.10.1/Module/Runti=
me.pm line 317. =
>at /usr/local/share/perl/5.10.1/Catalyst/Script/Server.pm line 239 =
>=A0
>Can someone tell me how to fix this?
>_______________________________________________
>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/20120316/0a55f=
9bf/attachment-0001.htm
More information about the Catalyst
mailing list