[Dbix-class] class layout [was "Alias" schema option]

Richard Jolly richardjolly at mac.com
Mon Jul 24 19:22:19 CEST 2006


On 5 Apr 2006, at 16:39, Brandon Black wrote:

[snip]

> This also touches on (to some degree) the whole issue of best
> practices for namespace management (class names) of the various
> classes related to a single table (the ResultSource, the ResultSet,
> and the Result classes), ResultSetManager and the related issues of
> "default" resultset_class's (::_resultset? ::ResultSet?
> MySchema::ResultSet::Foo? etc) and the load_classes M::F thing (in
> that it would be nice if ->load_classes() would pick up
> resultset/result classes that fit the default naming convention and
> stuff them in the right place).

What is the current best practice for package layout of user-written 
code?

Currently we have files like:

Project/Schema/Foo.pm            # table definition
Project/Schema/ResultSet/Foo.pm  # resultset additions
Project/Foo.pm                   # returned object additions

Since Project::Foo objects are returned from 
$schema->resultset('Foo')->search, we defined additional methods needed 
in that package. But should they be there, or defined in 
Project::Schema::Foo?

Thanks,

Richard







More information about the Dbix-class mailing list