IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Symfony PHP Discussion :

Champ requeried alors que pas voulu [2.x]


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Mai 2004
    Messages
    803
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 803
    Par défaut Champ requeried alors que pas voulu
    Bonjour,

    Lors de la génération d'une page, mon champ 'Départements' est indiqué comme 'required' alors que, dans mon entité, je ne l'ai pas indiqué comme tel.

    Voici mon attribut dans mon entité :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    /**
         * @ORM\ManyToOne(targetEntity="Hotels\GestionAnnoncesBundle\Entity\Departement")
         */
        private $departement;


    Voici mon champ dans mon formumaire :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $builder->add('departement','entity', array('class'=>'Hotels\GestionAnnoncesBundle\Entity\Departement', 'attr'=>array('onChange'=>"majPays('hotels_gestionannoncesbundle_provincetype_pays', this.value)")));


    Voici le code généré pour ma page :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <select id="hotels_gestionannoncesbundle_provincetype_departement" name="hotels_gestionannoncesbundle_provincetype[departement]" required="required" onchange="majPays('hotels_gestionannoncesbundle_provincetype_pays', this.value)">


    Un département n'étant pas obligatoire, cela est problématique.

    Merci d'avance pour votre aide.

  2. #2
    Membre très actif Avatar de hazamor
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2008
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2008
    Messages : 179
    Par défaut
    ajouter l'attribut "nullable" dans l'annotation:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    /**
         * @ORM\ManyToOne(targetEntity="Hotels\GestionAnnoncesBundle\Entity\Departement", nullable=true)
         */
        private $departement;

  3. #3
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Mai 2004
    Messages
    803
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 803
    Par défaut
    Merci beaucoup pour ta réponse et ton hyperactivité!

    En ajoutant cette propriété, j'obtiens l'erreur suivante :

    Unknown property 'nullable' on annotation 'Doctrine\ORM\Mapping\ManyToOne'.

  4. #4
    Membre très actif Avatar de hazamor
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2008
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2008
    Messages : 179
    Par défaut
    Désolé, vous avez raison, c'est plutôt dans l'annotation JoinColumns:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    /**
         * @ORM\ManyToOne(targetEntity="Hotels\GestionAnnoncesBundle\Entity\Departement")
         * @ORM\JoinColumns({
         *   @ORM\JoinColumn(name="departement_id", referencedColumnName="id", nullable=true)
         * })
         */
        private $departement;
    avec "departement_id" est le nom de colonne dans la table de cette entité, et "id" et le nom de colonne identifiant de la table Departement.

  5. #5
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Mai 2004
    Messages
    803
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 803
    Par défaut
    Encore merci...

    Cependant, ça ne fonctionne toujours pas. Voici le code dans ma classe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
        /**
         * @ORM\ManyToOne(targetEntity="Hotels\GestionAnnoncesBundle\Entity\Departement")
         * @ORM\JoinColumns({
         *   @ORM\JoinColumn(name="departement_id", referencedColumnName="id", nullable=true)
         * })
     
         */
        private $departement;
    Le champ est toujours 'required' dans le source généré :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <select id="hotels_gestionannoncesbundle_provincetype_departement" name="hotels_gestionannoncesbundle_provincetype[departement]" required="required"

  6. #6
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2009
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2009
    Messages : 96
    Par défaut
    et si tu ajoutes l'option required = false pour ton champ ???

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $builder->add('departement','entity', array(
        'class'=>'Hotels\GestionAnnoncesBundle\Entity\Departement', 
        'required' => false,
    'attr'=>array('onChange'=>"majPays('hotels_gestionannoncesbundle_provincetype_pays', this.value)")
    ));

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [WB17] Lenteur sous IE 8 alors que pas de lenteur sur FF 16
    Par ccambier dans le forum WebDev
    Réponses: 3
    Dernier message: 13/02/2014, 13h57
  2. Erreur alors que pas d'erreur
    Par raphl dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 14/07/2011, 11h55
  3. PB d'affichage alors que pas d'erreur en sortie
    Par avalen dans le forum SAS Base
    Réponses: 29
    Dernier message: 27/04/2011, 10h19
  4. une seule et uniqe variable qui pose probleme alors que pas les autres!
    Par guiguizekid dans le forum Général Python
    Réponses: 3
    Dernier message: 16/05/2008, 08h27
  5. [MySQL] Requête d'un champ vide alors que dans la base ce champ est non vide
    Par lex_22 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 18/04/2008, 23h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo