Venez baraguiner avec la communauté !
Vous n'êtes pas identifié.
Pages: 1
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 :
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
On dirait un problème de nommage de classe ou de chemin du namespace.
As-tu bien défini tes namespace ?
Repository/DeskRepository.php
<?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
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
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
Pages: 1