*_TABLE Konstanten definieren

In diesem Forum gibt es Starthilfe zum neuen Extension-System von phpBB 3.1/3.2. Fragen zur Entwicklung von Extensions und zur Konvertierung von phpBB 3.0.x MODs sind ebenfalls willkommen.
Benutzeravatar
D@ve
Ehemaliges Teammitglied
Beiträge: 3842
Registriert: 28.08.2002 19:33
Wohnort: Bretzfeld
Kontaktdaten:

Re: *_TABLE Konstanten definieren

Beitrag von D@ve »

Eine tables Klasse die aus dem Container alle Namen holt und über ne Kurzform ausgibt
Auch eine Idee...

Hab nochmal eine Verständnisfrage zu der services.yml (auch wenn das hier leicht offtopic ist). Ganz habe ich das Prinzip noch nicht verstanden:

Code: Alles auswählen

 phpbbgallery.core.helpers.tables:
class: phpbbgallery\core\helpers\tables
arguments:
- %tables.phpbbgallery.albums%
- %tables.phpbbgallery.albums_tracking%
- %tables.phpbbgallery.contests%
- %tables.phpbbgallery.moderators_cache%
Du registrierst hier Deine tables-Klasse in der services.yml...

1) Warum einmal phpbbgallery.core.helpers.tables und dann nochmal class: phpbbgallery\core\helpers\tables? Sieht irgendwie redundant aus... Ich vermute mal, das erste ist der Name des Services (den man vermutlich auch anders benennen könnte...?) und das zweite ist der Namespace unter dem die Klasse gefunden wird... Liege ich da richtig?

2) erzeugt phpBB hier automatisch immer eine Instanz der Klasse und übergibt die Parameter??? Hab jetzt spontan in Deiner Extension mal gesucht und keine Stelle gefunden, wo Du selber eine Instanz erzeugst.

3) Falls ja: Wo wird diese Instanz erzeugt? Kann ich das dazu nutzen um z.B. Code auszuführen? Weil dann könnte ich meine Tables Klasse da integrieren und einfach an eine andere Klasse als argument übergeben

4) Gibt es irgendwo eine Doku über die services.yml? Insbesondere eine Liste ganzen möglichen "arguments" des phpBB cores? Das einzige was ich gefunden habe ist eine Liste mit Hooks...

Hab gerade etwas Zeit zu Programmieren und mache alles per Trial and Error, weil phpbb.com immer noch offline ist.

VIelen Dank,
Gruß, Dave
There are only 10 types of people in the world: Those who understand binary, and those who don't
Benutzeravatar
Elsensee
Ehemaliges Teammitglied
Beiträge: 832
Registriert: 19.05.2010 15:14
Wohnort: Hamburg
Kontaktdaten:

Re: *_TABLE Konstanten definieren

Beitrag von Elsensee »

D@ve hat geschrieben:1) Warum einmal phpbbgallery.core.helpers.tables und dann nochmal class: phpbbgallery\core\helpers\tables? Sieht irgendwie redundant aus... Ich vermute mal, das erste ist der Name des Services (den man vermutlich auch anders benennen könnte...?) und das zweite ist der Namespace unter dem die Klasse gefunden wird... Liege ich da richtig?
Ja.
D@ve hat geschrieben:2) erzeugt phpBB hier automatisch immer eine Instanz der Klasse und übergibt die Parameter??? Hab jetzt spontan in Deiner Extension mal gesucht und keine Stelle gefunden, wo Du selber eine Instanz erzeugst.
Ja, die Instanz wird von phpBB erzeugt.
D@ve hat geschrieben:3) Falls ja: Wo wird diese Instanz erzeugt? Kann ich das dazu nutzen um z.B. Code auszuführen? Weil dann könnte ich meine Tables Klasse da integrieren und einfach an eine andere Klasse als argument übergeben
Wo weiß ich grad nicht. Aber ich glaub Symfony kompiliert da irgendnen Container ins cache-Verzeichnis, der sich um das Erstellen der Instanzen kümmert. Du kannst aber einfach (z. B.) - @phpbbgallery.core.helpers.table als Argument für deine Klasse eintragen, wie nickvergessen es hier gemacht hat: https://github.com/nickvergessen/phpbb- ... er.yml#L33
D@ve hat geschrieben:4) Gibt es irgendwo eine Doku über die services.yml? Insbesondere eine Liste ganzen möglichen "arguments" des phpBB cores? Das einzige was ich gefunden habe ist eine Liste mit Hooks...
Da die quasi zu Symfony gehört, musst du da nachgucken. Zum Beispiel: http://symfony.com/doc/current/book/ser ... ainer.html
Posts mostly powered by GitHub and phpBB.de Cross-Reference

2015-03-20 - Never forget 8)
Antworten

Zurück zu „Extension Bastelstube“