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

Doctrine2 PHP Discussion :

set clé étrangère sur doctrine 2.3


Sujet :

Doctrine2 PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2006
    Messages : 40
    Par défaut set clé étrangère sur doctrine 2.3
    Basé sur cette question: http://stackoverflow.com/questions/1...orking-anymore

    Je voudrais pouvoir mettre à jours la valeur d'une clé étrangère sans pour autant devoir chargé l'objet

    exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    class Item
    {
    /**
     * @ORM\ManyToOne(targetEntity="MyBundle\Entity\ItemType", inversedBy="itemTypes")
     * @ORM\JoinColumn(name="type_id", referencedColumnName="id")
     */
    protected $item_type;
    /**
     * 
     * @var string $item_type_id
     * @ORM\Column(type="integer")
     */
    protected $item_type_id;
    }
    .... Setter & Getter
    }
    Ce qui me permettait avant doctrine 2.3 de faire ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $item = new Item();
    $item->setItemTypeId(2); // Assuming that the ItemType with id 2 exists.
    Ces 2 lignes cidessus, ne génère pas d'erreur, mais ne sont pas prises en compte dans les insert/update

    Je voudrais éviter de devoir faire ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $item = new Item();
    $itemType = $this->entity_manager->getRepository('Acme\MyBundle:ItemType')->find(2);
    $item->setItemType($itemType); // Assuming that the ItemType with id 2 exists.
    Merci d'avance pour votre aide

  2. #2
    Membre émérite
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    725
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juin 2011
    Messages : 725
    Par défaut
    bonjour,

    la réponse est dans le lien que tu donnes (ou bien dans le post un peu plus bas http://www.developpez.net/forums/d12...ngere-sf2-1-a/).
    Il faut utiliser la méthode getReference de l'EntityManager pour récupérer un objet sans pour autant effectuer une requete dans la base

Discussions similaires

  1. Réponses: 5
    Dernier message: 16/07/2011, 16h49
  2. Clé étrangère sur une Vue
    Par escafr dans le forum SQL
    Réponses: 6
    Dernier message: 12/06/2008, 08h16
  3. [phpMyAdmin] Clé étrangère sur MySQL
    Par safwa dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 17/08/2007, 16h32
  4. Set serial Number sur une disquette
    Par Cpet dans le forum Composants VCL
    Réponses: 4
    Dernier message: 01/12/2004, 10h24

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