Schrift
[thread]599[/thread]

CAP: Query als Parameter übergeben?



<< >> 4 Einträge, 1 Seite
pktm
 2005-10-27 20:02
#5875 #5875
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
Hallo!

Ich benutze CGI::Application für meine Webanwendungen (wenn man sie denn so nennen möchte).

Jedenfalls kann man mit $cgi_app->query() das CGI-Query-Objekt instantiieren.
Dazu die Doku:
Quote
This method retrieves the CGI.pm query object which has been created by instantiating your Application Module.


Jetzt habe ich mir irgendwie angewöhnt, bei Weiterleitungen zu anderen Methoden (hier: runmodes) innerhalb des Scriptes (quasi die Alternative zu switches / eine andere Art der prozeduralen Programmierung) den instantiierten Query immer als Parameter mit zu geben.
Ist das sinnvoll oder wäre es besser, in jeder Methode den Query neu zu instantiieren? Oder ist das völlig egal?
Die Frage stellte sich mir, weil ich die Doku nochmal überflogen habe und mir dabei auffiel, dass das Objekt ja sowieso erzeugt wird. Es ist also immer in meinem Objekt vorhanden, egal in welcher Methode (warum also dann noch als Parameter mitgeben).

Frage klar?

Grüße, pktm
http://www.intergastro-service.de (mein erstes CMS :) )
format_c
 2005-10-27 22:40
#5876 #5876
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Natuerlich macht das sinn. Man spart großartige rumkopiererei von daten. Diese Methode hab ich noch nie fuer den Zweck gesehen. Ich werde die in meinem aktuellen Projekt gleich mal mit verarbeiten. Danke fuer den Tipp.

Gruß Alex\n\n

<!--EDIT|format_c|1130438510-->
format_c
 2005-10-27 22:49
#5877 #5877
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Hoppla CGI::Application,
Wenn es allerdingt bedeutet, dass du den Querystring an funkionen uebergibst und dann wieder mittels Konstuktor eines neuen Objekts wieder einliest ist dies meiner meinung nach nicht sehr sinnvoll. Ich wuerde immer das Objekt an sich uebergeben. aber wahrscheinlich lieg ich eh 100m daneben und du meinst noch was ganz anderes O_O

Gruß
pktm
 2005-10-28 00:26
#5878 #5878
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
Nein, ich glaube dein erster Post lag schon ganz nah dran. Beispiel:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
sub erster {
my $self = shift;
my $q = $self->query();
# machwas
return $self->zweiter_rm($q);
}

sub zweiter_rm {
my $self = shift;
my $q = shift || $self->query();
# machwas
}


Im Prinzp kann ich mir die Übergabe hier sparen, weil $q ja ohnehin schon in $self steckt.
http://www.intergastro-service.de (mein erstes CMS :) )
<< >> 4 Einträge, 1 Seite



View all threads created 2005-10-27 20:02.