[Dev] [3.1] Blank Template

Pour les extensions destinées à phpBB 3.1.x

Modérateur: Equipe

Règles du forum
A lire impérativement : Règlement de phpBB-fr.com

Re: [3.1] Blank Template

Messagepar pierredu » 19 Fév 2017 à 19:21

Le problème est qu'il faut décommenter dans le fichier services.yml (cela existe probablement), dans la déclaration du constructeur et dans les lignes qui passent les valeurs dans les variables locales.
Avatar de l’utilisateur
pierredu
Resp. Extensions
Resp. Extensions
 
Messages: 1050
Enregistré le: 29 Mai 2011 à 06:49
Localisation: Paris

Re: [3.1] Blank Template

Messagepar Skouat » 19 Fév 2017 à 19:49

@pierredu : Il est où le problème ?
Le fait de commenter les lignes que je mentionne ne va pas générer d'erreur autres que celles nécessaires.
Donc, une lois les propriétés inutiles identifiées, FoFa n'aura plus qu'à retirer les services qui étaient liées à ces propriétés en les retirant les déclarations au niveau du constructure et des fichiers .yml.
Mes MODS

Ultima-World Hébergé par phpBB-Services
Code parrainage : 1241646554
Skouat
Traducteur
Traducteur
 
Messages: 13708
Enregistré le: 02 Avr 2008 à 20:47

Re: [3.1] Blank Template

Messagepar FoFa » 19 Fév 2017 à 20:09

Cela me fait poser une question...

J'ai déjà, à mes tout débuts en matière d'extension, eu des erreurs qui me disaient que certains services déclarés dans un fichier n'étaient pas présents dans un autre fichier... Cela ne va-t-il pas générer le même type d'erreur? Est-ce à cela que tu penses pierredu?
De retour parmi vous :wink:
FoFa
Resp. des supporters
Resp. des supporters
 
Messages: 10582
Enregistré le: 15 Nov 2008 à 19:04
Localisation: Auxonne

Re: [3.1] Blank Template

Messagepar pierredu » 19 Fév 2017 à 21:39

Non, ce n'est pas à cela que je pense.

Le mécanisme des déclarations d'injection repose sur une ligne dans le fichier services.yml, une ligne de déclaration dans la classe (bon, avec PHP, la déclaration n'est pas strictement nécessaire), une ligne dans la déclaration du constructeur et une ligne dans le code du constructeur pour placer la valeur passée en paramètre dans une globale. Donc, il n'existe pas de mécanisme simple de validation/inhibition d'un paramètre du constructeur, puisqu'il faut intervenir à 3/4 endroits sur 2 fichiers.

Cela ne veut pas dire que ce que dit Skouat est faux. Il est inutile d'avoir des injections de paramètres dont on n'a pas besoin. C'est sûr (ou certain, comme on veut). Mais on peut garder ce toilettage pour la fin.

Revenons au fond du code.
Avatar de l’utilisateur
pierredu
Resp. Extensions
Resp. Extensions
 
Messages: 1050
Enregistré le: 29 Mai 2011 à 06:49
Localisation: Paris

Re: [3.1] Blank Template

Messagepar FoFa » 19 Fév 2017 à 22:17

Je vais alors tenter de nettoyer le code proprement concerné :wink:

Merci à vous deux ^_^
De retour parmi vous :wink:
FoFa
Resp. des supporters
Resp. des supporters
 
Messages: 10582
Enregistré le: 15 Nov 2008 à 19:04
Localisation: Auxonne

Re: [3.1] Blank Template

Messagepar Skouat » 20 Fév 2017 à 14:37

Hello,
FoFa a écrit:J'ai déjà, à mes tout débuts en matière d'extension, eu des erreurs qui me disaient que certains services déclarés dans un fichier n'étaient pas présents dans un autre fichier...

C'est quand tu déclares un service dans le .yml et que tu ne le déclares pas sur la ligne __construct() (ou inversement)
FoFa a écrit:Cela ne va-t-il pas générer le même type d'erreur?

Non,
Ca va t'indiquer que les méthodes ou propriétés appelées, par exemple, par $this->template et $this->user n'existent pas (désolé je n'ai pas les messages d'erreurs exactes, mais bon t'auras une erreur différente de quand tu déclares mal un service).
Mes MODS

Ultima-World Hébergé par phpBB-Services
Code parrainage : 1241646554
Skouat
Traducteur
Traducteur
 
Messages: 13708
Enregistré le: 02 Avr 2008 à 20:47

Précédente

Retourner vers Extensions en développement

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité