Cleaning up the logic
- Make a class
package WeirdLogic;
use Moose;
has 'schema' => ( isa => 'MyApp::Schema', is => 'ro');
has 'user' => ( isa => 'MyApp::User', is => 'ro',
required => 0, predicate => 'has_user', );
sub frobnicate {
my ($self, $foo) = @_;
if($self->has_user){
$self->schema->resultset('Foo')->search({ foo => $foo });
....
- No Catalyst