2010-05-25 3 views
0

J'ai une colonne dans une table définie comme suit dans mon fichier YAML:Doctrine type ENUM en valeur

myTable: 
    columns: 
    value: 
     type: enum 
     length: 2 
     values: ['yes', 'no'] 

Dans le code que je suis en train d'insérer des données dans ce tableau, mais je ne peux pas trouver un façon d'insérer les données en utilisant la valeur de texte enum (c'est-à-dire 'oui' ou 'non').

Ce que je voulais était est quelque chose comme ceci:

$obj = new myTable(); // the model for this table 
$obj->value = 'yes'; // if I use the numerical value for this it works 

J'utilise Doctrine 1.1.0.

Répondre

1

Est-ce que $ obj-> setValue ('yes') fonctionne? Et la chose évidente à vérifier est que vous appelez enregistrer sur l'objet?

+0

Je vais vous donner la réponse acceptée car c'est ce que je cherchais. Mais il s'est avéré que mon problème était que j'avais réglé la longueur des champs sous-jacents à 2 et que oui avait une longueur de 3. – MitMaro

+0

Merci, écuyer, j'aurais probablement remarqué la longueur si je n'avais pas répondu depuis mon téléphone ! – johnwards

1

Vous ne devez pas définir la longueur avec le type enum, car il est traité en interne en tant qu'entier.