IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 PHP Discussion :

Mettre un layout par défaut dans un plugin [1.x]


Sujet :

PHP

  1. #1
    Nouveau membre du Club
    Inscrit en
    Décembre 2010
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 30
    Points : 30
    Points
    30
    Par défaut Mettre un layout par défaut dans un plugin
    Bonjour à tous,

    Voilà je débute dans Symfony, et j'aimerai savoir si quelqu'un parmi vous saurait me donner une direction à prendre pour faire ce que j'aimerai.

    Donc, mon cas :

    Je travaille actuellement sur un plugin (myToolBoxPlugin) qui reprend un certain nombre de fonctionnalités que je compte réutiliser dans différents projets, et notamment un squelette d'affichage que je compte mettre dans un layout.php

    Le layout en lui même est assez simple, puisqu'il fait appel à plusieurs slots et partials qui seront configurables au niveau du projet, mais j'aimerai savoir s'il existe une méthode à écraser pour que lorsque je lance un

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    php symfony generate:app toto
    Le layout mis par défaut dans le dossier templates soit celui du plugin ...

    De la même façon, il faudrait (j'imagine) que le view.yml, ainsi que les partials (dont le contenu est géré par fichiers yml) soit accessibles ...

    Compte tenu du système de cascade des fichiers de config, il suffit je pense de ne pas écraser leurs valeurs au niveau de l'appli ou du module, mais je peux me tromper ^^

    Bref je ne sais pas si ce que je décrit ici est faisable (mais je pense que oui ...)
    De même je me trouve assez clair après relecture, mais si vous voulez des précisions, des bouts de codes ou autres, n'hésitez pas !

    Et bien entendu merci d'avance à tous ceux qui se sentiront capable de m'orienter

  2. #2
    Nouveau membre du Club
    Inscrit en
    Décembre 2010
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 30
    Points : 30
    Points
    30
    Par défaut
    Je remonte un peu le sujet, étant toujours à la recherche d'avis ^^

    Bon j'ai un peu avancé sur le sujet, il semblerait que je doive surcharger la tâche generate:app pour obtenir ce que je veux, seulement je ne m'y connais pas assez et j'ai trop peur de casser quelque chose ...

    Par contre en explorant un peu le code, j'ai pu voir que cette tâche cherchait un "skeleton" personalisé avant de prendre celui par défaut, comme le montre ce snippet :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (is_readable(sfConfig::get('sf_data_dir').'/skeleton/app'))
    {
      $skeletonDir = sfConfig::get('sf_data_dir').'/skeleton/app';
    }

    Je me demande donc si parmi vous une âme charitable saurait m'orienter vers une doc / un blog / un article sur comment créer son propre skeleton.

    Accessoirement, j'aurai aimé savoir si %SF_DATA_DIR% pouvait pointer non pas sur %SF_ROOT_DIR%/data, mais plutôt sur le dossier /data de mon plugin ...
    Ou si quelqu'un sait si la configuration en cascade fonctionne aussi à ce niveau ?

  3. #3
    Nouveau membre du Club
    Inscrit en
    Décembre 2010
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 30
    Points : 30
    Points
    30
    Par défaut
    Encore une (dernière) fois je me parle à moi même, mais étant donné que j'ai pu me débrouiller seul, je mets juste ici le modus operandi qui a été le mien.

    Dans un plugin, je place mon "skeleton" personalisé (copie du skeleton de base que je personalise en modifiant les fichiers qui m'intéressent, et en laissant les autres tels quels)

    Je crée ensuite une tâche dans mon plugin qui copiera le skeleton modifié dans /data

    Une fois ce skeleton en place, il sera pris automatiquement par défaut lors des différents "generate:app", mon layout est donc automatiquement pris en compte.

    Si des personnes souhaitent avoir plus de précisions, elles peuvent en demander à la suite.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Mettre une valeur par défaut dans un input type='file'
    Par fab76000 dans le forum Langage
    Réponses: 2
    Dernier message: 27/01/2009, 19h59
  2. Réponses: 10
    Dernier message: 04/11/2008, 14h30
  3. Réponses: 4
    Dernier message: 05/06/2007, 09h16
  4. Réponses: 1
    Dernier message: 19/05/2007, 12h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo