Bonjour,

Voila je rencontre un petit problème avec mon code.
J'ai modifié le script user.php , tel qu'indiqué lors d'une formation en ligne.
Le code est en dessous.

Mais voilà le résultat que j'obtiens :

The field "usernameCanonical" is not mapped by Doctrine, so it cannot be validated for uniqueness.

J'ai bien regardé sur d'autres post : on parle de changer le chemin FOS\UserBundle\Model\User en FOS\UserBundle\ Entity \User
Mais je me retrouve en exception car Symfony ne reconnait pas ce chemin.
Il y aurait aussi des problèmes de casse.
Mais je ne vois pas.
A ce sujet, j'ai bien l'extension INTL php activée.

Merci d'avance pour vos suggestions.

<?php

namespace gens\UserBundle\Entity;

use FOS\UserBundle\Model\User as BaseUser;
use Doctrine\ORM\Mapping as ORM;

/**
 * @ORM\Entity
 * @ORM\Table(name="user")
 */

 class User extends BaseUser{
     /**
     * @ORM\Id
     * @ORM\Column(type="integer")
     * @ORM\GeneratedValue(strategy="AUTO")
     */

     protected $id;

     public function __construct(){
         parent::__construct();
     }
 }

2 réponses


glochen G Uyirr
Auteur
Réponse acceptée

TROUVE !!

J'ai bien modifié FOS\UserBundle\ Entity \User dans user.php

puis : j'ai executé : php app/console doctrine:schema:update --dump-sql

MAIS : comme les champs n'étaient pas créés dans la table , alors j'ai récupéré le dump-sql avec les alter table
et j'ai exécuté sur phpmysqladmin...

Bonjour,

Je ne comprend pas trop pourquoi tu passe par phpmyadmin avec la console sf , il suffit de faire php app/console doctrine:schema:update --force...