Schrift
[thread]753[/thread]

Catalyst Action_Container



<< >> 9 Einträge, 1 Seite
Mangalore
 2006-06-14 17:17
#8028 #8028
User since
2006-05-09
17 Artikel
BenutzerIn
[Homepage] [default_avatar]
Tja, mal wieder ein kleines Problem mit Catalyst.

Ich will alle Controller und ihre Actions auflisten (als eine Art Sitemap der Applikation) und hierfür gibt's für Controller ja $c->controllers. Ich habe nun auch gefunden dass es eine Methode actions in dem Objekt Action_Container gibt und das darin die actions gespeichert werden, aber bisher habe ich nicht wirklich gefunden wo das ganze dann während der Laufzeit gespeichert ist.

Action_Container wird ja vom Dispatcher verwendet aber damit konnte ich bisher auch nichts anfangen

Wäre sehr erfreut wenn mir da jemand weiterhelfen könnte. Danke!
Gast Gast
 2006-06-14 17:37
#8029 #8029
Ich verstehe dein Problem nicht. Du hast $c->controller gefunden,
und du hast ->actions gefunden. *Was* ist die eigentliche Frage?
Mangalore
 2006-06-14 17:59
#8030 #8030
User since
2006-05-09
17 Artikel
BenutzerIn
[Homepage] [default_avatar]
Ok, die Antwort klingt gut insofern, dass sie andeutet, dass ich mich dumm anstelle.

Mein Problem ist zu finden wo ich ->actions aufrufen kann?

Wenn ich $c->dispatcher->actions aufrufe (logisch da dispatcher ActionContainer benutzt) ist das array leer. Ich weiss also nicht wo ich auf diese Action Container zugreifen kann, von denen im Dispatcher und anderswo geredet werden. Bei $c->controller(xyz)->actions und anderswo gibt er jedenfalls nur zurück dass er die Methode nicht kennt.

Da verstehe ich mal wieder die Struktur von Catalyst's Contextobjekt nicht ganz (gibt's da eigentlich irgendwo eine Hierarchie die das mal aufschlüsselt?)
Gast Gast
 2006-06-14 18:51
#8031 #8031
Ich hab gerade kein Catalyst in Reichweite, aber versuch mal
entweder ->action_hash oder ->find_or_create_action_container
auf dem Dispatcher Objekt aufzurufen.

Hierarchie gibt es meines Wissens nach für das Context Objekt
noch keine. Generell würde ich aber empfehlen für solche Fragen
#catalyst auf irc.perl.org bzw. die Catalyst Mailingliste in Betracht
zu ziehen.
Mangalore
 2006-06-14 19:05
#8032 #8032
User since
2006-05-09
17 Artikel
BenutzerIn
[Homepage] [default_avatar]
Oh Mann, ->hash_actions funkioniert, aber wo wird die Methode definiert? Im Dispatcher o.ä. scheint's das nicht zu geben.

Frage auch ab und an im IRC channel nach. Will da aber auch nicht die ganze Zeit nerven, bzw. im Moment war das noch nicht zeitkritisch oder so.

Danke!
Gast Gast
 2006-06-14 19:20
#8033 #8033
action_hash meinst du wohl, die Dokumentation ist noch etwas
dünn (Hilfe immer willkommen), aber dieser Accessor wird durchaus
in Dispatcher.pm definiert.

Und bezüglich nerven: Dafür ist der Channel ja auch da, das
Schlimmste, das passieren kann ist, dass keiner antwortet. Das
kommt aber außer in späteren Abendstunden eher selten vor.

Abgesehen davon wird dir ein Core-Dev immer mehr behilflich sein
können als beispielsweise ich. Mit Introspection hab ich mich in
Catalyst noch nicht wirklich beschäftigt.
Mangalore
 2006-06-16 15:28
#8034 #8034
User since
2006-05-09
17 Artikel
BenutzerIn
[Homepage] [default_avatar]
Jetzt wo ich weiss wonach ich suche, sehe ich ihn natürlich.

Ist noch ein bisschen doof weil ich keine Perl-Koriphäe bin und da also teils solche einfachen Sachen nicht weiss. Wenn's an's eigene Programmieren geht, ist Perl eigentlich mit Java, C++ und PHP-Kenntnissen durchaus zugänglich, aber mit Fremdcode habe ich so meine Probleme herauszufinden, was essentiell ist, da fühle ich mich ohne Dokumentation oder API des öfteren aufgeschmissen.

Will nicht jammern, macht ja auch Spaß und bis jetzt klappt auch alles nach ein paar Stolpersteinen, habe halt ab und an das Gefühl, das mir da Wissen einfach für Dinge fehlt, die eigentlich recht einfach sein sollten und ohne schriftliche Doku mit der Ausführlichkeit wie ich sie meinetwegen von Java her kenne ist es schwer sich selbst da durchzukämpfen.

Oder ich bin einfach blöd, das kann natürlich auch gut sein. ;)
esskar
 2006-06-16 16:50
#8035 #8035
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
[quote=Mangalore,16.06.2006, 13:28]Oder ich bin einfach blöd, das kann natürlich auch gut sein. ;)[/quote]
wohl kaum!
Gast Gast
 2006-06-16 16:51
#8036 #8036
Perl ist in vielen Dingen einfach ausdrucksstärker als die meisten
anderen Sprachen. Aber daran gewöhnt man sich, keine Sorge.

Anstrengend wird's dann, in etwas nicht-perligem zu entwickeln ;)
<< >> 9 Einträge, 1 Seite



View all threads created 2006-06-14 17:17.