/ Forside / Teknologi / Udvikling / Perl / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Perl
#NavnPoint
bjarneA 141
poul_from 50
soccer 30
Nicknack 14
Tmpj 0
Mason og allow_globals
Fra : Morten Guldager


Dato : 17-12-09 07:52

'Aloha!

Mon der stadig er nogen der bruger mason til at lave web-ting i perl?
Jeg forsøger ihvertfald....

Jeg havde en plan om en autohandler der kunne åbne min forbindelse
til MySQL og så "efterlade" en handler i $dbh.

Jeg havde så tænkt mig at kunne tilgå denne $dbh i min hello-world.mas
web-side.

Sådan cirka som beskrevet her:
http://www.masonbook.com/book/chapter-3.mhtml, midtvejs nede i
ex3.3 og ex3.4.

I noten efter ex3.4 skriver de så endda at der skal gøres noget
magisk for at få gjort $dbh global. Jeg kan godt få det til at
virke hvis jeg hacker det ind i apache config, men det virker
lidt kluntet.

Det ser så også ud som om jeg burde kunne bruge allow_globals
i perl direkte, men jeg kan ikke gennemskue hvor og hvordan...

Nogen der har forslag?



/Morten

 
 
Morten Guldager (17-12-2009)
Kommentar
Fra : Morten Guldager


Dato : 17-12-09 07:53

2009-12-17 Morten Guldager wrote
>
> Mon der stadig er nogen der bruger mason til at lave web-ting i perl?
> Jeg forsøger ihvertfald....

Ah ja, perl v5.10.0 og en nogenlunde moderne ubuntu linux.


/Morten

Adam Sjøgren (17-12-2009)
Kommentar
Fra : Adam Sjøgren


Dato : 17-12-09 20:55

On 17 Dec 2009 06:51:31 GMT, Morten wrote:

> Mon der stadig er nogen der bruger mason til at lave web-ting i perl?

Ork ja.

Nu til dags bruger jeg mest Mason som templating-sprog sammen med
Catalyst, men jeg har et par gamle websites der er old-school Mason.

> I noten efter ex3.4 skriver de så endda at der skal gøres noget
> magisk for at få gjort $dbh global. Jeg kan godt få det til at
> virke hvis jeg hacker det ind i apache config, men det virker
> lidt kluntet.

Jeg kan se på mine gamle websites at det er hvad jeg har gjort der:
PerlSetVar MasonAllowGlobals "$blah $bloh"

> Det ser så også ud som om jeg burde kunne bruge allow_globals
> i perl direkte, men jeg kan ikke gennemskue hvor og hvordan...

Har du set forklaringen på:

* http://masonhq.com/docs/manual/Params.html#allow_globals

?

I dag tror jeg at jeg ville lave et modul til at repræsentere websitet
og bruge en global variabel i modules namespace, hvis jeg skulle.


Mvh.

Adam

--
"Grittings. Ma nam is Kahlfin." Adam Sjøgren
asjo@koldfront.dk

Morten Guldager (18-12-2009)
Kommentar
Fra : Morten Guldager


Dato : 18-12-09 12:59

2009-12-17 Adam Sjøgren wrote
> On 17 Dec 2009 06:51:31 GMT, Morten wrote:
>
>> Mon der stadig er nogen der bruger mason til at lave web-ting i perl?
>
>> I noten efter ex3.4 skriver de så endda at der skal gøres noget
>> magisk for at få gjort $dbh global. Jeg kan godt få det til at
>...
>> Det ser så også ud som om jeg burde kunne bruge allow_globals
>> i perl direkte, men jeg kan ikke gennemskue hvor og hvordan...
>
> Har du set forklaringen på:
>
> * http://masonhq.com/docs/manual/Params.html#allow_globals

Jæb, og det er lige præcis det er er mit spørgsmål, hvor er det
jeg skal skrive:

allow_globals => [qw($dbh)]

Jeg gætter på at det er noget der skal hældes ind i en contructor
som jeg ikke aner hvor er. Altså, jeg har ikke selv kaldt den,
så det er jo nok noget der sker implicit via arv et eller andet
sted.


/Morten

Adam Sjøgren (18-12-2009)
Kommentar
Fra : Adam Sjøgren


Dato : 18-12-09 21:39

On 18 Dec 2009 11:58:31 GMT, Morten wrote:

>> Har du set forklaringen på:

>> * http://masonhq.com/docs/manual/Params.html#allow_globals

> Jæb, og det er lige præcis det er er mit spørgsmål, hvor er det
> jeg skal skrive:

> allow_globals => [qw($dbh)]

> Jeg gætter på at det er noget der skal hældes ind i en contructor
> som jeg ikke aner hvor er. Altså, jeg har ikke selv kaldt den,
> så det er jo nok noget der sker implicit via arv et eller andet
> sted.

Der hvor du instantierer dit HTML::Mason::Interp-objekt.

Du skal gøre det kedelige arbejde selv, når du vil noget specielt -
normalt får du denne del "gratis" når du siger "PerlResponseHandler
HTML::Mason::ApacheHandler" i din Apache konfiguration.

Hvis ikke vil konfigurere dine globale variable i Apaches konfiguration
må du vist skrive din egen ApacheHandler.

(Tag gerne det jeg skriver med et gran salt, det er godt nok længe siden
jeg har været inde i maven på Mason).


Mvh.

Adam

--
"Grittings. Ma nam is Kahlfin." Adam Sjøgren
asjo@koldfront.dk

Søg
Reklame
Statistik
Spørgsmål : 177414
Tips : 31962
Nyheder : 719565
Indlæg : 6407828
Brugere : 218875

Månedens bedste
Årets bedste
Sidste års bedste