Symfony2: Base de données et des entités paramètres: Ni ... ni..., ni de méthode ... existe dans la classe
J'ai un projet Symfony2 cnnected à la base de données. Pour chaque table, j'ai une entité.
Maintenant, j'essaie de connecter une Entité à l'autre à l'aide ManyToOne.
Voici le problème:
J'ai Deux entitys: l'Utilisateur et le lieu de Travail.
Dans l'Entité Utilisateur, j'ai:
/**
* @ORM\ManyToOne(targetEntity="Workplace")
* @ORM\JoinColumn(name="workplace", referencedColumnName="place")
**/
protected $workplace;
/**
* Set workplace
*
* @param integer $workplace
*/
public function setWorkplace($workplace)
{
$this->workplace = $workplace;
}
/**
* Get workplace
*
* @return integer
*/
public function getWorkplace()
{
return $this->workplace;
}
Dans le lieu de Travail de l'Entité que j'ai:
/**
* @ORM\Column(type="text")
*/
protected $place;
/**
* Set place
*
* @param text $place
*/
public function setPlace($place)
{
$this->place = $place;
}
/**
* Get place
*
* @return text
*/
public function getPlace()
{
return $this->place;
}
Et avec qui, j'obtiens une exception:
Neither property "workplace" nor method "getWorkplace()" nor method "isWorkplace()" exists in class "SciForum\Version2Bundle\Entity\Workplace"
Comment cela pourrait-il être résolu. Je vous remercie beaucoup.
Je pense que vous avez manqué setter et getter fonctions de chaque entité.
Normalement pas, je vais modifier ma question avec plus de détails.
Pourriez-vous envoyer votre code de contrôleur et du lieu de travail de l'entité?
Comment envoyer cela? À poster dans la question?
Oh, j'ai trouvé la solution, Lors du remplissage d'un formulaire dans mon contrôleur, j'ai été à l'aide de 'propriété' => 'lieu de travail' au lieu de 'propriété' => "lieu de travail".
Normalement pas, je vais modifier ma question avec plus de détails.
Pourriez-vous envoyer votre code de contrôleur et du lieu de travail de l'entité?
Comment envoyer cela? À poster dans la question?
Oh, j'ai trouvé la solution, Lors du remplissage d'un formulaire dans mon contrôleur, j'ai été à l'aide de 'propriété' => 'lieu de travail' au lieu de 'propriété' => "lieu de travail".
OriginalL'auteur Miloš | 2012-10-12
Vous devez vous connecter pour publier un commentaire.
Essayer cette
dans votre formulaire.
OriginalL'auteur Asish AP
@Asish AP est de droit, mais une explication est manquant.
Dans le formBuilder, et si vous avez une relation entre deux entités, vous devez spécifier le nom de l'entité dans votre formulaire.
Si vous spécifiez dans le formBuilder, une propriété qui n'existe pas, vous aurez ce message d'erreur:
Que c'était la raison de votre erreur et l'explication de la solution.
https://creativcoders.wordpress.com/2014/06/02/sf2-neither-the-property-nor-one-of-the-methods-exist-and-have-public-access-in-class/
OriginalL'auteur Edouard Kombo