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

Symfony PHP Discussion :

Appel de fonction dans ue appli admin [1.x]


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Juin 2010
    Messages
    19
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2010
    Messages : 19
    Par défaut Appel de fonction dans ue appli admin
    Bonjour, j'ai généré a partir d'une base de données exsistante un module admin. Un champ date d'une table news est enregistré au format int en timestamp.

    Si je veux dans mon application admin, afficher la date convertit je suppose qu'il faut créer une fonction qui va faire la convertion.

    J'ai crée un fonction dans mon modele/doctrine/News.class.php mais je sais pas ou l'appeler pour que l'appli admin l'utilise!

    Si quelqu'un à une solution sa serait cool

  2. #2
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Par défaut
    Tu peux appeler un partial depuis un module admin.

    Il faut alors, dans la liste des champs, précéder le nom du partial par un _ (qui ne doit pas apparaître dans le nom du partial). Dans le partial, tu peux mettre les fonctions que tu veux.

  3. #3
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Juin 2010
    Messages
    19
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2010
    Messages : 19
    Par défaut
    Merci mimi de me repondre!

    Donc une solution serait de créer un partial (modules/news/template/_formatDate.php par exmple) et de l'appeler dans la liste des champs?

    Tu veux dire quoi par liste des champs? L'appeler dans le fichier de config du modules (module/news/config/generator.yml)?

  4. #4
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Par défaut
    oui, comme un champ de la base, mais précédé par un _

  5. #5
    Membre expérimenté

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    186
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2008
    Messages : 186
    Par défaut
    Pour ma part j'ai créé une classe directement dans le dossier lib avec une méthode qui me convertie une date dans un format français. Ensuite depuis mon model News.class.php par exemple, je créé une nouvelle méthode

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public function getDateFrench()
        {
            return DateFr::getDateFr($this->getDateTimeObject('created_at')->format('w/d/n/Y'));
        }
    Ici je voulais avoir quelque chose comme : Mardi 06 Juillet 2010. (w/d/n/Y)

    Ensuite dans mon generator.yml, tu écris juste :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    config:
    --list:
    ----display : [date_french]
    comme ta méthode commence par get, Symfony va aller dans ton modèle récupérer la méthode s'appelant getDateFrench().

    Après tu peux faire avec les partials, je n'ai jamais essayé donc je ne sais pas.


    Et la, petite classe pour transformer les dates en français.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    class DateFr{
     
        //Voici les deux tableaux des jours et des mois traduits en français
        static $nom_jour_fr = array("Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi");
        static $mois_fr = Array("", "Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août",
            "Septembre", "Octobre", "Novembre", "Décembre");
     
        //echo "date du jour en français : " ;
        //echo $nom_jour_fr[$nom_jour].' '.$jour.' '.$mois_fr[$mois].' '.$annee;
        //Affichera par exemple : "date du jour en français : samedi 24 juin 2006."
     
        static function getDateFr($date)
        {
            list($nom_jour, $jour, $mois, $annee) = explode('/', $date);
            $date = self::$nom_jour_fr[$nom_jour].' '.$jour.' '.self::$mois_fr[$mois].' '.$annee;
            return $date;
        }
     
    }

  6. #6
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Juin 2010
    Messages
    19
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2010
    Messages : 19
    Par défaut
    Mercii spike2 ca marche niquel moi je passe directement avec la fonction date() de php pour le format, je crée pas de classe spécifique ^^

    J'ai pas éssayé avec les partials mais merci de l'idée mimi!

  7. #7
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Par défaut
    Juste pour rajouter deux grains de sel...

    As-tu pensé au plugin : sfFormExtraPlugin - 1.1.1 qui gère les dates beaucoup mieux avec des widget additionnels ?

    Pense à l'objet PHP DateTime, pour travailler sur tes dates, il fait 99% du travail d'internationalisation.

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

Discussions similaires

  1. Appel de fonction dans une page JSP
    Par Addouna dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 09/03/2006, 12h56
  2. Appeler une fonction dans un autre cadre !
    Par rich25200 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 01/11/2005, 13h01
  3. Réponses: 7
    Dernier message: 10/09/2005, 16h49
  4. [langage] Appel de fonction dans un lien
    Par drakan dans le forum Langage
    Réponses: 1
    Dernier message: 17/05/2005, 18h30
  5. Réponses: 3
    Dernier message: 23/06/2004, 21h17

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