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 :

Problème au moment du save


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Février 2008
    Messages : 155
    Par défaut Problème au moment du save
    Bonjour,

    Voila je rencontre un problème au moment d'un save. Voici l'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'id' cannot be null
    Voici l'extrait de mon schema :
    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    CmsTypeDocument:
      actAs:                         
        Timestampable: ~ 
        I18n:
          fields: [label, description]
          actAs:
            Sluggable: { fields: [label], uniqueBy: [lang, label] }
      columns:
        label:                       { type: string(255)   , notnull: false }
        description:                 { type: clob(1000000) , notnull: false }
        position:                    { type: integer       , notnull: false }
        cms_user_id:                 { type: integer       , notnull: true  }
      relations:
        CmsUser:                     { local: cms_user_id,  foreign: id,    foreignAlias: CmsTypeDocuments, onDelete: CASCADE }     
     
    # ------------------- 
     
    CmsDocument:
      actAs:                         
        Timestampable: ~
        I18n:
          fields: [name, description]
          actAs:
            Sluggable: { fields: [name], uniqueBy: [lang, name] } 
      columns:
        name:                        { type: string(255)   , notnull: false }
        description:                 { type: clob(1000000) , notnull: false }
        size:                        { type: integer       , notnull: false }
        doc_file:                    { type: blob          , notnull: false } 
        doc_mimetype:                { type: string(255)   , notnull: false } 
        position:                    { type: integer       , notnull: false }
        cms_user_id:                 { type: integer       , notnull: true  }
        cms_type_document_id:        { type: integer       , notnull: true  }#<-- Revoir la règle !
      relations:
        CmsUser:                     { local: cms_user_id,           foreign: id,    foreignAlias: CmsDocuments, onDelete: CASCADE }   
        CmsTypeDocument:             { local: cms_type_document_id,  foreign: id,    foreignAlias: CmsDocuments, onDelete: CASCADE }
    Voici l'extrait de mon fichier action :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    protected function processForm(sfWebRequest $request, sfForm $form)
        {
     
            $form->bind($request->getParameter($form->getName()), $request->getFiles($form->getName()));
     
            if ($form->isValid())
            {
                $cms_document = $form->save(); 
            }
        }
    Voici ma classe CmsDocumentsForm.class.php :
    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
    17
    18
    19
    20
    21
    22
    23
    class CmsDocumentForm extends BaseCmsDocumentForm
    {
      public function configure()
      {
          parent::setup();
          unset($this['created_at'],$this['updated_at']);
          $this->embedI18N(array('fr','en'));
          $this->widgetSchema->setLabel('fr', 'Français');
          $this->widgetSchema->setLabel('en', 'Anglais');
     
     
          $widget_schema = $this->getWidgetSchema();
          //Transforme le combo des user en champ caché.
          $widget_schema['cms_user_id'] = new sfWidgetFormInputHidden();
          //Transforme le champ longtexte en file
          $widget_schema['doc_file']    = new sfWidgetFormInputFile();
     
     
          $validator_schema = $this->getValidatorSchema();
          $validator_schema['cms_user_id'] = new sfValidatorDoctrineChoice(array('model' => 'CmsUser'));
          $validator_schema['doc_file']    = new sfValidatorFile();
      }
    }
    Ici je transforme mon champ doc_file en fichier d'upload.

    Quelqu'un aurai une idée du problème ?

    Merci

  2. #2
    Membre Expert
    Homme Profil pro
    Inscrit en
    Septembre 2009
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2009
    Messages : 875
    Par défaut
    dans le template c'est juste un echo $form que vous faites? si ce n'est pas le cas, peut etre que vous avez oubliez de faire un $form->renderhiddenfiield.
    je ne trouve pas l'id dans le schema, seulement en référence de vos clefs étrangères, mais je ne suis pas trop a l'aise de ce coté la ^^'
    que donne ce var_dump dans votre action?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var_dump ($request->getParameter($form->getName()), $request->getFiles($form->getName()));

Discussions similaires

  1. Problème au moment du build
    Par TOPGUN89 dans le forum Eclipse
    Réponses: 1
    Dernier message: 06/07/2010, 19h52
  2. probléme au moment de la création d'une nouvelle classe
    Par Djug dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 22/01/2009, 11h19
  3. Lecteur mp3 : problème au moment de la publication
    Par zerojanvier04 dans le forum ActionScript 3
    Réponses: 0
    Dernier message: 20/08/2008, 01h35
  4. Hibernate - Problème lors d'un save
    Par soa dans le forum Hibernate
    Réponses: 1
    Dernier message: 22/05/2008, 21h21
  5. [Embedded function] Problème avec la fonction SAVE
    Par bassemb dans le forum Simulink
    Réponses: 4
    Dernier message: 23/04/2008, 17h24

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