Bonsoir Les amis

j'ai un probleme avec la requete generé je vous met les jointures et la requete generée :

<?php
    class Film extends AppModel
    {
      var $name = "Film" ;

      public $actsAs = array('Containable');
      public $belongsTo = array('Categorie' => array('className' => 'Categorie',
        'foreignKey' => 'id_categorie',
        'type' => 'INNER',
        'conditions' => array("Film.id_categorie" => "Categorie.id_categorie")));
    }
    ?>

<?php
    class Categorie extends AppModel{

      var $name = "Categorie" ;
      public $actsAs = array('Containable');
      public $hasMany = array('Film' => array('className' => 'Film'));

    }
    ?>

la requete generée :

SELECT `Film`.*, `Categorie`.* FROM `filmotheque_g7_v1`.`films` AS `Film` INNER JOIN `filmotheque_g7_v1`.`categories` AS `Categorie` ON (`Film`.`id_categorie` = 'Categorie.id_categorie') WHERE 1 = 1

vous remarquez dans la conditions on y a quelque chose bizard :

`Film`.`id_categorie`

différent de

'Categorie.id_categorie'

vous avez remarquez les quottes??

dés que je change en

`Cayegorie`.`id_categorie`

la requete marche trés bien sur phpmyadmin

que pensez vous de ce problème bizard ??

1 réponse


omar254
Auteur
Réponse acceptée

j'ai résolu le problème d'un façon indirecte,j'ai renommer le nom de la column clé primaire id_categorie a ID et j'ai enlever la condition

'conditions' => array('Film.id_categorie' => 'Categorie.id_categorie')))

et ça marché .

je pourrais dire le problème est résolu ^^