Ryszard has asked for the wisdom of the Perl Monks concerning the following question:
let me explain a little.
I've written a module based on CGI::Application, and every other module i use inherits from it (ie when writing another module i do 'use base CGIA::Replacement'; )
My web app has "registered" users (ie users that will log in via the website, session stored in the database etc etc). Each user belongs to a group, and that group has specific attributes.
My goal is to create (from a dev/admin POV) a "My Website" framework, where i can just program another module, add it to the $path, update a database table and the content/functionality will be automatically added to the greater application.
Now (bear with me a bit while i share some detail), i've got a database table that maps a group with a feature (for example "upload file"), and (for the sake of normalisation) i have a mywebsite_feature table that maps a library to that feature.
From this setup i can dynamically pull in (at run time via require) whatever libraries are associated with the group of the user logged in. With a "special" method in the library, i can return the method(s) i would like the application to access (such as showTemplate(), or storeFile() )
what i'm having trouble with is the mechanics in accessing the dynamically added runmode.
so, in summary, what i want is a CGI::Application based module that will dynamically use other modules and dynamically add run modes based on the output of a "special" method in the dynamically loaded module.
in closing, i have two remarks:If anyone has experience in doing this, or suggestions on how it could be done better, i would love to hear it.
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: CGI::App dynamic runmodes/modules
by rhesa (Vicar) on Oct 15, 2006 at 18:49 UTC | |
by Ryszard (Priest) on Oct 16, 2006 at 06:44 UTC |