La Ferme du web - Les forums

Venez baraguiner avec la communauté !

Vous n'êtes pas identifié.

#1 23/01/2012 16:54:57

soyuka
Membre
Date d'inscription: 23/01/2012
Messages: 1

[Symfony 2] Les repository et manager d'entité

Bien le bonjour,

Je suis actuellement le tutoriel WatchMyDesk sur lafermeduweb.

Il est dit de créer un répertoire Repository pui d'y mettre les fichiers de repository. Ensuite il faut changer les namespaces ainsi que les références de ces Repos.

J'effectue donc les modifications et j'obtiens Erreur 500 :

Code:

The autoloader expected class "Wmd\WatchMyDeskBundle\Entity\Desk" to be defined in file "MONDOSSIERPERSONNEL/symfony/app/../src/Wmd/WatchMyDeskBundle/Entity/Desk.php". The file was found but the class was not in it, the class name or namespace probably has a typo.

Si j'oublie de dossier Repository, et que je laisse tout dans Entity (ainsi que les namespaces et références), ça marche parfaitement !

Ce stackoverflow mentionne l'erreur sans solutions...

Merci pour cet excellent tutoriel, en espérant pouvoir construire ensuite mon projet personnel !

Hors ligne

 

23/01/2012 16:54:57

Botte De Foin Publicitaire


#2 04/02/2012 14:34:54

Nicolas
Membre
Lieu: Pyrénées Atlantique (64)
Date d'inscription: 15/07/2010
Messages: 44
Site web

Re: [Symfony 2] Les repository et manager d'entité

On dirait un problème de nommage de classe ou de chemin du namespace.

As-tu bien défini tes namespace ?

Repository/DeskRepository.php

Code:

<?php

namespace Wmd\WatchMyDeskBundle\Repository;

use Doctrine\ORM\EntityRepository;

/**
 * DeskRepository
 *
 * This class was generated by the Doctrine ORM. Add your own custom
 * repository methods below.
 */
class DeskRepository extends EntityRepository
{
}

Entity/Desk.php

Code:

namespace Wmd\WatchMyDeskBundle\Entity;

use Doctrine\ORM\Mapping as ORM;

use Symfony\Component\Validator\Constraints as Assert;

// Validator : UniqueEntity
use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;

// Validator : Callback
use Symfony\Component\Validator\ExecutionContext;

/**
 * Wmd\WatchMyDeskBundle\Entity\Desk
 *
 * @ORM\Table(name="desk")
 * @ORM\Entity(repositoryClass="Wmd\WatchMyDeskBundle\Repository\DeskRepository")
 * @UniqueEntity(fields="title", message="Ce titre de bureau existe déjà...")
 * @Assert\Callback(methods={"isContentCorrect"})
 */
class Desk
{
// ...

Dernière modification par Nicolas (04/02/2012 14:36:19)

Hors ligne

 

#3 11/02/2012 10:45:00

tobalsan
Membre
Date d'inscription: 17/10/2011
Messages: 4

Re: [Symfony 2] Les repository et manager d'entité

Alors c'est très simple, il te dit qu'il trouve bien ton fichier de classe.
Donc deux possibilité:
- soit tu n'a effectivement pas bien géré tes namespaces comme suggéré avant
- soit tout simplement, tu a oublié de modifier le nom de ta classe directement dans sa déclaration (ça m'est arrivé plusieurs fois en faisant des copiers collés ^^)

Hors ligne

 

Pied de page des forums

Powered by FluxBB
© Copyright 2008-2009 - LaFermeduWeb.net