[Catalyst] connecting to more than one database
Marcello Romani
mromani at ottotecnica.com
Thu Jul 3 13:40:31 BST 2008
Oleg Pronin ha scritto:
> How do you imagine yourself a request with join beetween 2 tables in
> different databases?
> This is the reason you can't make relationships between different schemas.
If it's not a typo, the two schemas connect to the same database on the
mysql side...
Anyway, I think DBIC sees them as two different databases, even if their
connections strings are the same...
>
> 2008/7/3 jagdish eashwar <jagdish.eashwar at gmail.com
> <mailto:jagdish.eashwar at gmail.com>>:
>
> I am working on two Catalyst applications and had earlier set up
> separate Mysql databases for each of them. Since some of the tables
> that these two applications use, are the same, I put the common
> tables in a third database and created two models in each of the
> Catalyst applications. I am, however, unable to set up
> relationships between tables in the common and specific databases.
>
> I used myapp_create.pl to create the two models:
>
> perl script/hardware_create.pl model MyhardwareDB DBIC::Schema
> Myhardware::Schema::MyhardwareDB create=static dbi:mysql:hardware
> 'jag' 'passwd' '{ AutoCommit => 1 }'
>
> perl script/hardware_create.pl model CommonDB DBIC::Schema
> Myhardware::Schema::CommonDB create=static dbi:mysql:hardware 'jag'
> 'passwd' '{ AutoCommit => 1 }'
>
> and then put in the relationships between the employee and hardware
> tables as under:
>
> # in Emp.pm
> #employee has many hardware
> __PACKAGE__->has_many(emp_hm_hw =>
> 'Myhardware::Schema::MyhardwareDB::Hardware', 'hw_emp_id');
>
> # in Hardware.pm
> #hardware belongs to employee
> __PACKAGE__->belongs_to(hw_bt_emp_id =>
> 'Myhardware::Schema::CommonDB::Emp','hw_emp_id');
>
> When I use these accessors in the tt2 templates, i get an undef error.
>
> undef error - DBIx::Class::Relationship::Accessor::__ANON__(): Can't
> find source for Myhardware::Schema::MyhardwareDB::Hardware at
> /home/jag/catalyst_trials/Myhardware/root/src/usr_fragment.tt2 line 8
>
> What am I doing wrong?
>
> Jagdish
>
> _______________________________________________
> List: Catalyst at lists.scsys.co.uk <mailto: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/
--
Marcello Romani
Responsabile IT
Ottotecnica s.r.l.
http://www.ottotecnica.com
More information about the Catalyst
mailing list