Impossible à comprendre comment faire un composant

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • #31
    Re : Impossible à comprendre comment faire un composant

    la méthode (et pas fonction) display est définie (au plus haut de la hiérarchie des classes, dans la classe JView.
    Chaque héritier définit et initialise ses varaibles et le template à appliquer dans la vue, puis appelle la méthode réalisant l'affichage.

    Ta syntaxe est erronnée, la définition de la méthode étant:
    Code PHP:
    /**
    * Execute and display a template script.
    *
    * @param   string  $tpl  The name of the template file to parse; automatically searches through the template paths.
    *
    * @return  mixed  A string if successful, otherwise a JError object.
    *
    * @see     fetch()
    * @since   11.1
    */
    public function display($tpl null)
    {
        
    $result $this->loadTemplate($tpl);
        if (
    $result instanceof Exception)
        {
            return 
    $result;
        }
        echo 
    $result;

    La méthode display attends le nom du template associé (dans tmpl du composant) et pas une valeur numérique. L'absence de paramètres chargeant, et évaluant le template défault.php.
    Il vaut mieux avoir sous les yeux la documentation des classes du framework quand on développe, ça évite ces erreurs.

    Ref: http://api.joomla.org
    Pas de demande de support par MP.
    S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

    Commentaire


    • #32
      Re : Impossible à comprendre comment faire un composant

      J'ai déja vu la définition...

      Mais ce n'est pas le nom entier qu'il attend c'est le chiffre nom du template.

      PAr exemple j'ai 2 templates dans le bon dossier : default.php et default_2.php

      donc si je veux ouvrir le default_2.php je passe 2 en paramètre dans la méthode display()...



      Je résumé mon problème

      En lisant les docs je me suis apercus que si on donne en nom de méthode dnas le controller le nom de la "tache" cela fonctionnait aussi .

      Donc j'ai testé une nouvelle méthode pour arriver à mon but :

      Code PHP:
      controller.php 

      function 
      save()
      {
      parent::display(2); 

      Code PHP:
      view.html.php 

      function 
      display($tpl null)
      {
      parent::display();//je ne sais plus quoi mettre en paramètre...


      D'apres un tuto dès que dans $_POST['task'] il y'aura save alors la fonction se lancera...

      Voilà pourquoi j'ai tenté ça...


      PS : le résultat s'affichait bien tout à l'heure grace à un switch sur le fichier view.html.php mais ceci ne respecterai pas la MVC puisque d'apres ce que j'ai compris se doit être le controller qui "controlle" ...

      J'espere avoir été clair dans ma façon de résumer...

      Merci

      Commentaire


      • #33
        Re : Impossible à comprendre comment faire un composant

        Envoyé par thomas32 Voir le message
        J'ai déja vu la définition...

        Mais ce n'est pas le nom entier qu'il attend c'est le chiffre nom du template.
        le code des paramètres de la méthode est pourtant TRES CLAIR:
        @param string $tpl The name of the template file to parse; automatically searches through the template paths.
        C'est le nom du template qui est demandé, pas un index. Et une chaîne se passe entre 'le_tpl' et pas comme un entier.
        Pas de demande de support par MP.
        S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

        Commentaire


        • #34
          Re : Impossible à comprendre comment faire un composant

          Certes , mais j'ai essayé les 2 syntaxes ( '2' et 2 ) et les 2 fonctionnent.

          Apres j'ai même essayé default_2.php ( nom du fichier entier)
          Et il m'a mit comme erreur : erreur 500 default_default_2.php introuvable , ce qui montre bien que la méthode ( ou la classe ... ? ) rajoute bien default_ toute seule...

          Commentaire


          • #35
            Re : Impossible à comprendre comment faire un composant

            Voilà j'ai reussi a creer un composant bien que pour l'instant peu évolué, je pense avoir compris le systeme de MVC coté admin et coté front end.

            SI ça peut vous interesser mon composant consiste en un formulaire : nom, prenom et greeting
            On rentre les données et quand on appuie sur sauvegarder ça affiche sur une autre page " bienvenue Mr ... ,... " ainsi qu'un tableau résumant toute la table de la BDD.

            Coté admin on voit pareil un tableau qui correspond à la table de la BDD. Je suis en train d'essayer de rajouter une case a coché sur chaque ligne enfin de pouvoir supprimer ou modifier les lignes de notre choix...


            Plus qu'a remercier les personnes qui ont pris du temps pour m'aider, et qui ont su me conseiller de tres bon tuto.

            J'aurais sans doute encore quelques questions mais elles ne seront pas vastes comme mes précédentes. Ce sera des questions sur un problème en particulier

            Thomas

            Commentaire

            Annonce

            Réduire
            Aucune annonce pour le moment.

            Partenaire de l'association

            Réduire

            Hébergeur Web PlanetHoster
            Travaille ...
            X