[Catalyst] Authentication Store: DBC vs DBIx::Class

Robert Krimen robertkrimen at gmail.com
Wed Nov 28 20:01:33 GMT 2007


I was rooting around CPAN and came upon both ::DBIC and ::DBIx::Class

This e-mail cleared up for me which one new projects should use. Maybe you could
put a note in ::DBIx::Class about the eventual deprecation of ::DBIC,
just to make it extra clear.

Something to the effect of your last paragraph:

=head1 C::P::A::DBIx::Class versus C::P::A::DBIC

For all new DBIx::Class-based installations, the DBIx::Class module
is the better choice, but requires at least C::P::Authentication 0.10000

Thanks,
Rob

On Jul 17, 2007 11:50 AM, Jay K <jayk at ion0.com> wrote:
> Hi Jim,
>
> The DBIx::Class module is kind-of successor to DBIC.  It is much more
> flexible in terms of what it allows you to do, and it works with the
> new realms functionality of C::P::Authentication.  DBIC doesn't.
> DBIx::Class allows more complex specification of the user during
> authentication.  For example, you can limit by a users 'status'
> field... or you can provide a DBIx::Class::ResultSet search term to
> use to find the user... in other words, you are no longer limited to
> just the username/password combo to provide authentication.  A glance
> at the docs for the module will give you a better idea of what is
> possible.
>
> Aside from that, I say 'kind-of successor' because DBIx::Class does
> not support Class::DBI and won't.  For Class::DBI - the DBIC module
> is the only one that will work, though you will be lacking realms
> capability.  I don't know if there is demand for a Class::DBI
> compatible module...  if there is, someone will no doubt update the
> DBIC module (or create a Class::DBI store)
>
> For all new DBIx::Class-based installations, the DBIx::Class module
> is the better choice.  However, since it does not support the old
> api, it requires C::P::Authentication 0.10000 or up, and does not
> function in 'compatibility' mode.  So switching to it in an older app
> requires slight modifications to the application, mainly
> configuration changes and swapping out the $c->login calls to use $c-
>  >authenticate instead.  In most apps, it's a relatively smooth
> transition.
>
> Hope that clears things up,
>
> Jay
>
>
> On Jul 17, 2007, at 2:02 PM, Jim Spath wrote:
>
> > I was just curious about peoples opinions of
> > Catalyst::Plugin::Authentication::Store::DBIC vs
> > Catalyst::Plugin::Authentication::Store::DBIx::Class
> >
> > We use DBIx::Class for our model and the DBIC module for
> > authentication currently.
> >
> > I realize that DBIC allows us to use DBIx::Class or Class:DBI, but
> > am wondering if there are any other advantages one module has over
> > the other.
> >
> > Thanks!
> >
> > --
> > Jim Spath
> >
> >
> > _______________________________________________
> > List: Catalyst at lists.rawmode.org
> > Listinfo: http://lists.rawmode.org/mailman/listinfo/catalyst
> > Searchable archive: http://www.mail-archive.com/
> > catalyst at lists.rawmode.org/
> > Dev site: http://dev.catalyst.perl.org/
>
> ---
> For most things, throwing yourself at the wall over and over is a
> better way to improve than thinking hard about the wall and taking
> pictures of it.  -- D.Litwack
>
>
>
>
> _______________________________________________
> List: Catalyst at lists.rawmode.org
> Listinfo: http://lists.rawmode.org/mailman/listinfo/catalyst
> Searchable archive: http://www.mail-archive.com/catalyst@lists.rawmode.org/
> Dev site: http://dev.catalyst.perl.org/
>



More information about the Catalyst mailing list