I'm not sure I completely understand how your solution differs from that suggested by tobyink (but then, I'm not sure I completely understand his solution... sorry, I don't have much experience with all this!)

How are the global variables in the AppGlobals module assigned their values? Does the dbh, cgi, session, etc, have to be passed into AppGlobals first? In that case, don't I just simply end up having to pass the AppGlobals object to every one of my subroutines? I suppose this does reduce the argument list from 3 items to just 1 item.

Or are you suggesting that the CGI object, session and DB handler are actually created inside the AppGlobals package, and then I access them using AppGlobals::get_dbh, AppGlobals::get_cgi, etc? So really it would be like the solution proposed by Anonymous Monk, except moved into a separate package?

I'm sorry if I'm missing something that should be obvious...


In reply to Re^2: Best practices passing database handles, cgi objects, etc. by xtpu2
in thread Best practices passing database handles, cgi objects, etc. by xtpu2

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.