Ok, so I overlooked the fact that FastNotes::Model::User,
FastNotes::Model::Base, FastNotes::Model::Note only load when Model.pm
does not have the use statements I point out below:
package FastNotes::Model;
use strict;
use warnings;
use v5.10;
use Mojo::Loader;
use lib '../../storage'; <---- THIS
use FastNotesDB; <---- THIS
my $modules = Mojo::Loader->search('FastNotes::Model');
foreach (@$modules) {
print "Loading $_...\n";
Mojo::Loader->load($_);
}
1;
so when Model.pm looks like above:
%INC = {
'Time/Zone.pm' => '/usr/share/perl5/site_perl/Time/Zone.pm',
'Mojo/JSON.pm' => '/usr/share/perl5/site_perl/Mojo/JSON.pm',
'Mojolicious.pm' => '/usr/share/perl5/site_perl/
Mojolicious.pm',
'Cwd.pm' => '/usr/lib/perl5/core_perl/Cwd.pm',
'Mojo/IOLoop/Server.pm' => '/usr/share/perl5/site_perl/Mojo/
IOLoop/Server.pm',
'Mojo.pm' => '/usr/share/perl5/site_perl/Mojo.pm',
'Mojolicious/Plugin/RequestTimer.pm' => '/usr/share/perl5/
site_perl/Mojolicious/Plugin/RequestTimer.pm',
'Digest/
base.pm' => '/usr/share/perl5/core_perl/Digest/
base.pm',
'Mojolicious/Commands.pm' => '/usr/share/perl5/site_perl/
Mojolicious/Commands.pm',
'URI.pm' => '/usr/share/perl5/site_perl/URI.pm',
'MIME/Base64.pm' => '/usr/lib/perl5/core_perl/MIME/
Base64.pm',
'IO/Socket/INET.pm' => '/usr/lib/perl5/core_perl/IO/Socket/
INET.pm',
'Mojo/Cookie/Response.pm' => '/usr/share/perl5/site_perl/
Mojo/Cookie/Response.pm',
'Errno.pm' => '/usr/lib/perl5/core_perl/Errno.pm',
'FastNotes/Model.pm' => undef,
'MIME/QuotedPrint.pm' => '/usr/lib/perl5/core_perl/MIME/
QuotedPrint.pm',
'File/Spec.pm' => '/usr/lib/perl5/core_perl/File/Spec.pm',
'File/Glob.pm' => '/usr/lib/perl5/core_perl/File/Glob.pm',
'Sys/Hostname.pm' => '/usr/lib/perl5/core_perl/Sys/
Hostname.pm',
'Mojo/Message/Request.pm' => '/usr/share/perl5/site_perl/
Mojo/Message/Request.pm',
'warnings/
register.pm' => '/usr/share/perl5/core_perl/
warnings/
register.pm',
'XSLoader.pm' => '/usr/lib/perl5/site_perl/XSLoader.pm',
'Encode/Alias.pm' => '/usr/lib/perl5/site_perl/Encode/
Alias.pm',
'Encode/Config.pm' => '/usr/lib/perl5/site_perl/Encode/
Config.pm',
'Mojo/Exception.pm' => '/usr/share/perl5/site_perl/Mojo/
Exception.pm',
'Mojo/Cookie.pm' => '/usr/share/perl5/site_perl/Mojo/
Cookie.pm',
'unicore/lib/Perl/SpacePer.pl' => '/usr/share/perl5/
core_perl/unicore/lib/Perl/SpacePer.pl',
'Mojo/Loader.pm' => '/usr/share/perl5/site_perl/Mojo/
Loader.pm',
'
utf8.pm' => '/usr/share/perl5/core_perl/
utf8.pm',
'IO/Socket/UNIX.pm' => '/usr/lib/perl5/core_perl/IO/Socket/
UNIX.pm',
'Mojo/Server/Daemon.pm' => '/usr/share/perl5/site_perl/Mojo/
Server/Daemon.pm',
'Mojo/Date.pm' => '/usr/share/perl5/site_perl/Mojo/Date.pm',
'Exporter/Heavy.pm' => '/usr/share/perl5/core_perl/Exporter/
Heavy.pm',
'File/Spec/Unix.pm' => '/usr/lib/perl5/core_perl/File/Spec/
Unix.pm',
'Mojo/Content/Single.pm' => '/usr/share/perl5/site_perl/Mojo/
Content/Single.pm',
'Mojo/Util.pm' => '/usr/share/perl5/site_perl/Mojo/Util.pm',
'Mojolicious/Plugin/EplRenderer.pm' => '/usr/share/perl5/
site_perl/Mojolicious/Plugin/EplRenderer.pm',
'Mojo/Path.pm' => '/usr/share/perl5/site_perl/Mojo/Path.pm',
'AutoLoader.pm' => '/usr/share/perl5/core_perl/
AutoLoader.pm',
'
lib.pm' => '/usr/lib/perl5/core_perl/
lib.pm',
'Data/Dumper.pm' => '/usr/lib/perl5/site_perl/Data/
Dumper.pm',
'IO/Handle.pm' => '/usr/lib/perl5/core_perl/IO/Handle.pm',
'Mojolicious/Plugins.pm' => '/usr/share/perl5/site_perl/
Mojolicious/Plugins.pm',
'SelectSaver.pm' => '/usr/share/perl5/core_perl/
SelectSaver.pm',
'Getopt/Long.pm' => '/usr/share/perl5/core_perl/Getopt/
Long.pm',
'IO/Socket.pm' => '/usr/lib/perl5/core_perl/IO/Socket.pm',
'Mojo/DOM/HTML.pm' => '/usr/share/perl5/site_perl/Mojo/DOM/
HTML.pm',
'Mojolicious/Sessions.pm' => '/usr/share/perl5/site_perl/
Mojolicious/Sessions.pm',
'Mojo/DOM.pm' => '/usr/share/perl5/site_perl/Mojo/DOM.pm',
'UNIVERSAL.pm' => '/usr/share/perl5/core_perl/UNIVERSAL.pm',
'Mojolicious/Routes.pm' => '/usr/share/perl5/site_perl/
Mojolicious/Routes.pm',
'Mojolicious/Plugin/DefaultHelpers.pm' => '/usr/share/perl5/
site_perl/Mojolicious/Plugin/DefaultHelpers.pm',
'Mojo/Log.pm' => '/usr/share/perl5/site_perl/Mojo/Log.pm',
'Mojo/Parameters.pm' => '/usr/share/perl5/site_perl/Mojo/
Parameters.pm',
'Digest/MD5.pm' => '/usr/lib/perl5/core_perl/Digest/MD5.pm',
'File/Path.pm' => '/usr/share/perl5/core_perl/File/Path.pm',
'FindBin.pm' => '/usr/share/perl5/core_perl/FindBin.pm',
'Mojo/Transaction/HTTP.pm' => '/usr/share/perl5/site_perl/
Mojo/Transaction/HTTP.pm',
'IO/Seekable.pm' => '/usr/lib/perl5/core_perl/IO/
Seekable.pm',
'File/Copy.pm' => '/usr/share/perl5/core_perl/File/Copy.pm',
'Encode.pm' => '/usr/lib/perl5/site_perl/Encode.pm',
'
base.pm' => '/usr/share/perl5/core_perl/
base.pm',
'Config.pm' => '/usr/lib/perl5/core_perl/Config.pm',
'File/Basename.pm' => '/usr/share/perl5/core_perl/File/
Basename.pm',
'FastNotesDB.pm' => undef,
'
integer.pm' => '/usr/share/perl5/core_perl/
integer.pm',
'Mojo/Asset/Memory.pm' => '/usr/share/perl5/site_perl/Mojo/
Asset/Memory.pm',
'Mojolicious/Plugin.pm' => '/usr/share/perl5/site_perl/
Mojolicious/Plugin.pm',
'Carp.pm' => '/usr/share/perl5/core_perl/Carp.pm',
'Date/Format.pm' => '/usr/share/perl5/site_perl/Date/
Format.pm',
'
utf8_heavy.pl' => '/usr/share/perl5/core_perl/
utf8_heavy.pl',
'Mojolicious/Plugin/CallbackCondition.pm' => '/usr/share/
perl5/site_perl/Mojolicious/Plugin/CallbackCondition.pm',
'Mojo/DOM/CSS.pm' => '/usr/share/perl5/site_perl/Mojo/DOM/
CSS.pm',
'
constant.pm' => '/usr/share/perl5/core_perl/
constant.pm',
'Mojo/Content/MultiPart.pm' => '/usr/share/perl5/site_perl/
Mojo/Content/MultiPart.pm',
'IO/File.pm' => '/usr/lib/perl5/core_perl/IO/File.pm',
'URI/Escape.pm' => '/usr/share/perl5/site_perl/URI/
Escape.pm',
'DynaLoader.pm' => '/usr/lib/perl5/core_perl/DynaLoader.pm',
'
feature.pm' => '/usr/share/perl5/core_perl/
feature.pm',
'Net/SSLeay.pm' => '/usr/lib/perl5/vendor_perl/Net/
SSLeay.pm',
'Mojo/IOLoop/Resolver.pm' => '/usr/share/perl5/site_perl/
Mojo/IOLoop/Resolver.pm',
'List/Util.pm' => '/usr/lib/perl5/core_perl/List/Util.pm',
'Mojo/IOLoop/Stream.pm' => '/usr/share/perl5/site_perl/Mojo/
IOLoop/Stream.pm',
'File/Find.pm' => '/usr/share/perl5/core_perl/File/Find.pm',
'Mojo/Asset/File.pm' => '/usr/share/perl5/site_perl/Mojo/
Asset/File.pm',
'Class/Autouse.pm' => '/usr/share/perl5/site_perl/Class/
Autouse.pm',
'FastNotes.pm' => '/home/chuck/fastnotes/lib/FastNotes.pm',
'Mojolicious/Plugin/HeaderCondition.pm' => '/usr/share/perl5/
site_perl/Mojolicious/Plugin/HeaderCondition.pm',
'Mojo/Upload.pm' => '/usr/share/perl5/site_perl/Mojo/
Upload.pm',
'Fcntl.pm' => '/usr/lib/perl5/core_perl/Fcntl.pm',
'Mojo/IOWatcher.pm' => '/usr/share/perl5/site_perl/Mojo/
IOWatcher.pm',
'Symbol.pm' => '/usr/share/perl5/core_perl/Symbol.pm',
'Scalar/Util.pm' => '/usr/lib/perl5/core_perl/Scalar/
Util.pm',
'Mojolicious/Static.pm' => '/usr/share/perl5/site_perl/
Mojolicious/Static.pm',
'Exporter.pm' => '/usr/share/perl5/core_perl/Exporter.pm',
'IO/Socket/SSL.pm' => '/usr/share/perl5/vendor_perl/IO/
Socket/SSL.pm',
'/usr/lib/perl5/vendor_perl/auto/Net/SSLeay/autosplit.ix' =>
'/usr/lib/perl5/vendor_perl/auto/Net/SSLeay/autosplit.ix',
'Mojo/ByteStream.pm' => '/usr/share/perl5/site_perl/Mojo/
ByteStream.pm',
'Mojolicious/Controller.pm' => '/usr/share/perl5/site_perl/
Mojolicious/Controller.pm',
'UR.pm' => undef,
'Mojolicious/Command/Daemon.pm' => '/usr/share/perl5/
site_perl/Mojolicious/Command/Daemon.pm',
'Mojo/IOLoop/EventEmitter.pm' => '/usr/share/perl5/site_perl/
Mojo/IOLoop/EventEmitter.pm',
'Encode/Encoding.pm' => '/usr/lib/perl5/site_perl/Encode/
Encoding.pm',
'Class/AutoloadCAN.pm' => '/usr/share/perl5/site_perl/Class/
AutoloadCAN.pm',
'
bytes.pm' => '/usr/share/perl5/core_perl/
bytes.pm',
'
strict.pm' => '/usr/share/perl5/core_perl/
strict.pm',
'
vars.pm' => '/usr/share/perl5/core_perl/
vars.pm',
'Mojo/Template.pm' => '/usr/share/perl5/site_perl/Mojo/
Template.pm',
'Mojo/Home.pm' => '/usr/share/perl5/site_perl/Mojo/Home.pm',
'Mojo/Server.pm' => '/usr/share/perl5/site_perl/Mojo/
Server.pm',
'Mojolicious/Routes/Match.pm' => '/usr/share/perl5/site_perl/
Mojolicious/Routes/Match.pm',
'Mojo/Transaction.pm' => '/usr/share/perl5/site_perl/Mojo/
Transaction.pm',
'Mojolicious/Plugin/PoweredBy.pm' => '/usr/share/perl5/
site_perl/Mojolicious/Plugin/PoweredBy.pm',
'unicore/Heavy.pl' => '/usr/share/perl5/core_perl/unicore/
Heavy.pl',
'Time/Local.pm' => '/usr/share/perl5/core_perl/Time/
Local.pm',
'
warnings.pm' => '/usr/share/perl5/core_perl/
warnings.pm',
'B.pm' => '/usr/lib/perl5/core_perl/B.pm',
'Mojo/Cache.pm' => '/usr/share/perl5/site_perl/Mojo/
Cache.pm',
'Mojolicious/Renderer.pm' => '/usr/share/perl5/site_perl/
Mojolicious/Renderer.pm',
'Mojo/Message.pm' => '/usr/share/perl5/site_perl/Mojo/
Message.pm',
'PerlIO/
encoding.pm' => '/usr/lib/perl5/core_perl/PerlIO/
encoding.pm',
'Mojo/Command.pm' => '/usr/share/perl5/site_perl/Mojo/
Command.pm',
'Mojo/Base.pm' => '/usr/share/perl5/site_perl/Mojo/Base.pm',
'Mojo/Headers.pm' => '/usr/share/perl5/site_perl/Mojo/
Headers.pm',
'Mojo/URL.pm' => '/usr/share/perl5/site_perl/Mojo/URL.pm',
'Mojo/Cookie/Request.pm' => '/usr/share/perl5/site_perl/Mojo/
Cookie/Request.pm',
'Mojo/Transaction/WebSocket.pm' => '/usr/share/perl5/
site_perl/Mojo/Transaction/WebSocket.pm',
'Mojo/DOM/Collection.pm' => '/usr/share/perl5/site_perl/Mojo/
DOM/Collection.pm',
'FastNotes/Controller/Auths.pm' => '/home/chuck/fastnotes/
lib/FastNotes/Controller/Auths.pm',
'Mojolicious/Plugin/Config.pm' => '/usr/share/perl5/
site_perl/Mojolicious/Plugin/Config.pm',
'Time/HiRes.pm' => '/usr/lib/perl5/site_perl/Time/HiRes.pm',
'IO/Poll.pm' => '/usr/lib/perl5/core_perl/IO/Poll.pm',
'Mojo/Message/Response.pm' => '/usr/share/perl5/site_perl/
Mojo/Message/Response.pm',
'/usr/lib/perl5/vendor_perl/auto/Net/SSLeay/
randomize.al' =>
'/usr/lib/perl5/vendor_perl/auto/Net/SSLeay/
randomize.al',
'Mojo/IOWatcher/EV.pm' => undef,
'Mojolicious/Plugin/JsonConfig.pm' => '/usr/share/perl5/
site_perl/Mojolicious/Plugin/JsonConfig.pm',
'Mojo/Asset.pm' => '/usr/share/perl5/site_perl/Mojo/
Asset.pm',
'Mojo/IOLoop.pm' => '/usr/share/perl5/site_perl/Mojo/
IOLoop.pm',
'Mojo/Content.pm' => '/usr/share/perl5/site_perl/Mojo/
Content.pm',
'Mojolicious/Plugin/EpRenderer.pm' => '/usr/share/perl5/
site_perl/Mojolicious/Plugin/EpRenderer.pm',
'IO.pm' => '/usr/lib/perl5/core_perl/IO.pm',
'Mojo/IOLoop/Client.pm' => '/usr/share/perl5/site_perl/Mojo/
IOLoop/Client.pm',
'Socket.pm' => '/usr/lib/perl5/core_perl/Socket.pm',
'PerlIO.pm' => '/usr/share/perl5/core_perl/PerlIO.pm',
'Mojolicious/Plugin/TagHelpers.pm' => '/usr/share/perl5/
site_perl/Mojolicious/Plugin/TagHelpers.pm',
'Mojolicious/Routes/Pattern.pm' => '/usr/share/perl5/
site_perl/Mojolicious/Routes/Pattern.pm',
'
overload.pm' => '/usr/share/perl5/core_perl/
overload.pm',
'Digest/SHA.pm' => '/usr/lib/perl5/site_perl/Digest/SHA.pm',
'Mojolicious/Types.pm' => '/usr/share/perl5/site_perl/
Mojolicious/Types.pm'
};
I don't know how:
use lib '../../storage'; <---- THIS
use FastNotesDB; <---- THIS
is preventing the foreach loop with Mojo::Loader from executing.
On Aug 15, 2:59 pm, Виктор Турский <
koorc...@gmail.com> wrote:
> 2011/8/15 Chuck <
cfmwes...@gmail.com>: