Symfony | FOSUserBundle Erreur

Par alex_dsp, il y a 8 ans


Bonjour,

Je suis entrain d'apprendre à utilisé le framework Symfony, j'ai installer le bundle FOSUserBundle mais je recontre une erreur .

Voici mon code .

# src/FosSf3/MainBundle/Entity/User.php <?php namespace FosSf3\MainBundle\Entity; use FOS\UserBundle\Model\User as BaseUser; use Doctrine\ORM\Mapping as ORM; /** * Class User * @package FosSf3\MainBundle\Entity * @ORM\Table(name="fos_user") * @ORM\Entity */ class User extends BaseUser { const ROLE_SUPER_ADMIN = 'ROLE_SUPER_ADMIN'; const ROLE_ADMIN = 'ROLE_ADMIN'; const ROLE_USER = 'ROLE_USER'; /** * @var integer * * @ORM\Column(name="id", type="integer") * @ORM\Id * @ORM\GeneratedValue(strategy="AUTO") */ protected $id; /** * @var * * @ORM\Column(name="gender", type="string", length=255, nullable=true) */ protected $gender; /** * @var * * @ORM\Column(name="firstname", type="string", length=255, nullable=true) */ protected $firstname; /** * @var * * @ORM\Column(name="lastname", type="string", length=255, nullable=true) */ protected $lastname; /** * @var * * @ORM\Column(name="address", type="text", nullable=true, nullable=true) */ protected $address; /** * @var * * @ORM\Column(name="zip_code", type="string", length=255, nullable=true) */ protected $zipCode; /** * @var * * @ORM\Column(name="city", type="string", length=255, nullable=true) */ protected $city; /** * @var * * @ORM\Column(name="country", type="string", length=255, nullable=true) */ protected $country; /** * @var * * @ORM\Column(name="phone", type="string", length=255, nullable=true) */ protected $phone; /** * Constructor */ public function __construct() { parent::__construct(); } /** * @param mixed $gender */ public function setGender($gender) { $this->gender = $gender; } /** * @return mixed */ public function getGender() { return $this->gender; } /** * @param mixed $firstname */ public function setFirstname($firstname) { $this->firstname = $firstname; } /** * @return mixed */ public function getFirstname() { return $this->firstname; } /** * @param mixed $lastname */ public function setLastname($lastname) { $this->lastname = $lastname; } /** * @return mixed */ public function getLastname() { return $this->lastname; } /** * @param mixed $address */ public function setAddress($address) { $this->address = $address; } /** * @return mixed */ public function getAddress() { return $this->address; } /** * @param mixed $city */ public function setCity($city) { $this->city = $city; } /** * @return mixed */ public function getCity() { return $this->city; } /** * @param mixed $country */ public function setCountry($country) { $this->country = $country; } /** * @return mixed */ public function getCountry() { return $this->country; } /** * @param int $id */ public function setId($id) { $this->id = $id; } /** * @return int */ public function getId() { return $this->id; } /** * @param mixed $zipCode */ public function setZipCode($zipCode) { $this->zipCode = $zipCode; } /** * @return mixed */ public function getZipCode() { return $this->zipCode; } /** * @param mixed $phone */ public function setPhone($phone) { $this->phone = $phone; } /** * @return mixed */ public function getPhone() { return $this->phone; } } # app/config/config.yml imports: - { resource: parameters.yml } - { resource: security.yml } - { resource: services.yml } # Put parameters here that don't need to change on each machine where the app is deployed # https://symfony.com/doc/current/best_practices/configuration.html#application-related-configuration parameters: locale: en framework: #esi: ~ translator: { fallbacks: ['%locale%'] } secret: '%secret%' router: resource: '%kernel.project_dir%/app/config/routing.yml' strict_requirements: ~ form: ~ csrf_protection: ~ validation: { enable_annotations: true } #serializer: { enable_annotations: true } templating: engines: ['twig'] default_locale: '%locale%' trusted_hosts: ~ session: # https://symfony.com/doc/current/reference/configuration/framework.html#handler-id handler_id: session.handler.native_file save_path: '%kernel.project_dir%/var/sessions/%kernel.environment%' fragments: ~ http_method_override: true assets: ~ php_errors: log: true # Twig Configuration twig: debug: '%kernel.debug%' strict_variables: '%kernel.debug%' # Doctrine Configuration doctrine: dbal: driver: pdo_mysql host: '%database_host%' port: '%database_port%' dbname: '%database_name%' user: '%database_user%' password: '%database_password%' charset: UTF8 # if using pdo_sqlite as your database driver: # 1. add the path in parameters.yml # e.g. database_path: '%kernel.project_dir%/var/data/data.sqlite' # 2. Uncomment database_path in parameters.yml.dist # 3. Uncomment next line: #path: '%database_path%' orm: auto_generate_proxy_classes: '%kernel.debug%' naming_strategy: doctrine.orm.naming_strategy.underscore auto_mapping: true # Swiftmailer Configuration swiftmailer: transport: '%mailer_transport%' host: '%mailer_host%' username: '%mailer_user%' password: '%mailer_password%' spool: { type: memory } # FOS User Bundle fos_user: db_driver: orm firewall_name: main user_class: FosSf3\MainBundle\Entity\User service: mailer: fos_user.mailer.twig_swift registration: form: type: FOS\UserBundle\Form\Type\RegistrationFormType name: fos_user_registration_form validation_groups: [Registration, Default] confirmation: enabled: true template: '@FOSUser/Registration/email.txt.twig' profile: form: type: FOS\UserBundle\Form\Type\ProfileFormType #validation_groups: [Profile, Default] resetting: email: template: '@FOSUser/Resetting/email.txt.twig' group: group_class: FosSf3\MainBundle\Entity\Group from_email: address: mail@domain.tld sender_name: user

Je cherche a réparer cette erreur j'ai chercher de moi même quelques heures mais je comprends toujours pas d'ou viens cette erreur..
Voici l'erreur que j'obtiens

Attempted to load class "User" from namespace "FosSf3\MainBundle\Entity".aroundDid you forget a "use" statement for e.g. "Symfony\Component\Security\Core\User\User", "Symfony\Bridge\Doctrine\Tests\Fixtures\User" or "FOS\UserBundle\Model\User"?

Dans l'attente d'une aide qui pourrait m'être très précieuse, je vous remerci.

Cordialement.

1 réponse

betaWeb, il y a 8 ans

Salut,

C'ets vraisemblablement un problème de namespace. Vérifes que tu importes les bons namespaces et que les noms sont bien corrects (problème de casse, oubli de caractères, caractères en trop etc).

Et lance un composer --dump-autoload pour mettre à jour l'autoloader (tu as dû le faire après avoir installé le FOSUserBundle normalement).