2009-07-08 4 views
0

Ich versuche, Class :: DBI mit Catalyst :: Plugin :: Authentication :: Store :: DBIC zu verwenden. Die für CPAN angegebene example funktioniert nicht mit Class :: DBI. Zum Beispiel ist die Konfiguration falsch: role_class => 'DB :: Role' muss durch role_class => 'MyApp :: Model :: DB :: Role' ersetzt werden. Ich habe die Authentifizierung mit einem einfachen DBI verwendet, aber ich würde es lieber verwenden Klasse :: DBI wie im Rest meiner Anwendung.Beispiel für Catalyst :: Plugin :: Authentifizierung :: Store :: DBIC und Klasse :: DBI

Ich konnte ein komplettes Beispiel für Catalyst-Authentifizierung mit Klasse: DBI nicht finden. Kennst du ein solches Tutorial?

+0

Sie werden viel mehr Unterstützung für DBIx :: Class als Class :: DBI finden; Überlege dir, – ysth

Antwort

2

Ich vermute, dass es besser wäre, wenn Sie im #catalyst-Kanal auf irc.perl.org nachfragen. Sie werden entweder Ihren eigenen Speicher für CDBI schreiben oder Sie werden herausfinden, wie Sie den CDBI-Kompatibilitäts-Layer in DBIx :: Class verwenden, damit er funktioniert, oder wenn es sich um eine neue Codebase handelt, sollten Sie CDBI-Legacy wirklich berücksichtigen und baue dein Schema mit DBIx :: Class und DBIx :: Class :: Schema :: Loader

1

Ich hasse es zu sagen, aber singingfish hat Recht. Die Catalyst::Plugin::Authentication::Store::DBIC wurde seit einiger Zeit nicht mehr aktualisiert (abgesehen davon, dass die veraltete Warnung angezeigt wird). Sie verwendet auch die alte (2006) Authentifizierungs-API und wird der limitierende Faktor Ihrer Anwendung sein, selbst wenn Sie sie zum Laufen gebracht haben. Wenn Sie die Option haben, würde ich zu DBIx::Class wechseln. Wenn nicht, ist Ihre einzige echte Wahl, Ihr eigenes Benutzerspeichermodul zu schreiben, das mit Class::DBI funktioniert. Es ist eigentlich nicht zu hart, und Sie können Anweisungen in der Interna doc für Catalyst-Auth finden:

http://search.cpan.org/dist/Catalyst-Plugin-Authentication/lib/Catalyst/Plugin/Authentication/Internals.pod

Viel Glück!

JayK