[Catalyst-de] Problem mit Datenbank-Anbindung

Robert 'phaylon' Sedlacek rs at 474.at
Mon Mar 12 11:40:07 GMT 2007


mailinglisten at renee-baecker.de wrote:
> Jetzt habe ich mich endlich mal durchgerungen, etwas mit Catalyst
> herumzuspielen und schon tauchen Probleme auf ;-)

Nicht ganz, du verwendest da grossteils DBIC, und da scheint auch der 
Fehler aufzutreten.

Der Unterschied wird wohl folgendes sein:

> my @cats   = $schema->resultset('Kategorie')->all;

Hier rufst du 'resultset' auf dem Schema auf.

> Meine Model-Klasse in Catalyst:
> 
> package PerlFAQ::Model::Model;

Das hier ist irrsinnig verwirrend, 'Model' ist ein recht schlechter Name 
für's Model, weil es wie eine base class klingt. Ich würde zu 
'PerlFAQ::Model::DBIC' oder Ähnlichem raten.

> package PerlFAQ::Controller::FAQ;
> 
> use strict;
> use warnings;
> use base 'Catalyst::Controller';
> 
> use Data::Dumper;
> 
> use FindBin;

Wofür das FindBin in einem Catalyst Controller?

> # zeige alle Kategorien an
> sub index : Private{
>     my ( $self, $c ) = @_;
>        
> $c->response->body(Dumper($c->model->resultset('Kategorie')->all));
> }

Versuch

   $c->model('Model')->resultset('Kategorie')->all

oder gleich

   $c->model('Model::Kategorie')->all;

'Model' natürlich in 'DBIC' umbenennen wenn es stattdessen 
'PerlFAQ::Model::DBIC' wäre.

Woher hast du die Idee, das Model beim Aufruf nicht anzugeben?

-- 
# Robert 'phaylon' Sedlacek
# Perl 5/Catalyst Developer in Hamburg, Germany
{ EMail => ' rs at 474.at ', Web => ' http://474.at ' }



More information about the Catalyst-de mailing list