Pages

Date 5 octobre 2012

Tutoriel Jobeet pour Zend Framework 2

Jobeet est un excellent cours écrit par l'équipe Symfony afin de vous apprendre à utiliser le framework en développant un site d'offres d'emplois fonctionnel. Le tutoriel d'origine portait sur la version 1.x de Symfony. En cherchant sur Google, vous trouverez certainement le tutoriel Jobeet pour Symfony 2.0, mais celui-ci ne provient pas de l'équipe Symfony.

Pour ma part, je vais partir à la découverte du Zend Framework 2. J'ai décidé de suivre le tutoriel original Jobeet, mais en l'adaptant pour ZF2 et vous faire ainsi partager cette expérience. Les ressources en français pour Zend Framework 2 étant encore pauvre au moment où j'écrit ces lignes, j'espère que cela pourra servir à certains d'entre vous.


J'essayerais, autant que possible, de corriger ces tutoriaux au fur et à mesure de ma compréhension de ce framework.
Ainsi, au cours de ces 20 tutoriaux, nous devrions couvrir les composants les plus utilisés du Zend Framework 2.


Attention:
J'essayerais de suivre au mieux le plan du tutoriel jobeet original. Cependant, je découvre Zend Framework 2, et je pourrais donc être amené à modifier ce plan, pour tenir compte des différences entre Zend Framework 2 et Symfony 1.4 (version utilisé dans le tutoriel Jobeet original)


15 commentaires:
  1. bonjour
    Bravo pour cette initiative autour de ZF2.
    Je met votre blog dans mon flux rss.
    Au plaisir de vous lire
    Cordialement
    Ami44

    RépondreSupprimer
  2. Le lien vers le tutoriel original de Jobeet Symfony est mort. On peut trouver le tutoriel à cette adresse:

    http://symfony.com/legacy/doc/jobeet?orm=Propel

    RépondreSupprimer
    Réponses
    1. Celui-là fonctionne encore
      http://symfony.com/legacy/doc/jobeet/1_4/fr?orm=Doctrine

      Supprimer
  3. Très bon initiative,merci pour ce tuto.

    RépondreSupprimer
  4. Salut,

    Excusez-moi si la question ne cadre pas avec vos attentes.

    En fait j'ai deux modeles ATable et BTable. Le deux sont declares dans Module.php afin d'etre accessibles partout. On dit sur le Web et meme dans le manuel ZF2 que pour avoir accees par exemple a BTable a partire de ATable, il faut que ATable implement Zend\ServiceManager\ServiceLocatorAwareInterface et a partir de ATable, je peut acceder a BTable simplement en saisissant le code :
    $this->getServiceLocator()->get('Site\Model\ArticleTable');

    Je l'ai essaye mais cela ne marche pas. On m'affiche le message d'erreur suivant: Fatal error: Call to a member function get() on a non-object in ...

    Voici qq references sur le web ou j'ai lu ces choses:

    http://aromatix.fr/?p=326 voir la section Injection automatique du ServiceManager dans les classes

    Auriez-vous une solution testee qui permette d'acceder a un service a partir de n'importe ou dans le projet???

    RépondreSupprimer
  5. Je m'excuse. Le code est $this->getServiceLocator()->get('Site\Model\BTable'); et non $this->getServiceLocator()->get('Site\Model\ArticleTable');

    RépondreSupprimer
  6. Bonsoir Romain,

    Merci pour ces tutos, il sont bien fait.
    J'ai un projet à réaliser avec ce framwork et tes tutos me seront très utiles,

    Mais comment accéder aux jours 12 à 20 ?? Ne les as tu pas réalisés?

    RépondreSupprimer
  7. Bonjour,

    Non, pour le moment ils ne sont malheureusement pas disponibles. J'ai été pas mal occupé ces derniers mois.
    J'ai prévu de m'y remettre d'ici quelques jours, je n'ai pas laissé tombé ^^

    Si tu as des questions pour ton projet, n'hésite pas à venir les poser à la communauté ZF2 France sur Google+ : https://plus.google.com/communities/111975026947754845564

    RépondreSupprimer
    Réponses
    1. Bonsoir,

      Merci pour ta réponse, (même si la mienne est tardive..) et pour le l'info sur la communauté ZF2.

      En fait j'ai l'obligation de réaliser mon projet avec Zend 1 et non zend 2... du coup je vais rechercher d'autres tutos.

      Supprimer
  8. Bonjour, le projet a été abandonné?

    RépondreSupprimer
    Réponses
    1. Bonjour,

      Non, il faudrait effectivement m'y remettre :-)

      Supprimer
  9. Perso j'attend le jour 18 avec impatience... Il faudrait penser a remmetre à jour certaine page, en autre, les formulaire avec la fonction bond, plus besoin de exchangeArray. Bien plus simple

    RépondreSupprimer
    Réponses
    1. Bonjour Renaud,

      Merci pour ton retour sur la fonction bind(). Je regarderais pour mettre à jour dès que possible.

      Je reprend enfin les tutos: le jour 12 est en cours de rédaction. Mais il y aura encore pas mal d'attente jusqu'au jour 18 :-)

      Supprimer
  10. Bonjour Romain,
    Très bon tutoriel qui m'a beaucoup aidé.
    Est-ce que tu as arrêté complètement ce tuto ou les chapitres suivants arriveront un jour ou l'autre ?
    Merci d'avance :)

    RépondreSupprimer
    Réponses
    1. Bonsoir,

      Désolé pour ma réponse tardive...7 mois plus tard...
      J'avais plus ou moins arrêté, par manque de temps (le chapitre suivant est toujours dans mes brouillons ...).

      Mais je pense que je reprendrais complètement prochainement (p-e avec un vrai nom de domaine), en repartant avec Laminas (futur nom du projet ZF3, en cours de reprise par la Linux Foundation).
      => affaire à suivre :-)

      Cependant, si tu as un question sur un point non traité , je serai ravi de te répondre (via un petit message privé sur Twitter par ex)

      Supprimer