Je voudrais savoir quoi faire si on a des tables qui ne sont pas nommés suivant les conventions CakePHP.
Car j'utilise un programme qui va voir d'autres base de données

6 réponses


Hum déjà... bah tu galère :p (oui très constructif)
Mais surtout tu va devoir bien t'amuser avec tes Model.

Pas spécialement, il suffit simplement dans chaque model, indiquer quelle table utiliser.

Lien doc model cakephp

class Exemple extends AppModel {
    public $useTable = 'exmp'; // Ce model utilise une table 'exmp' de la base de données
}
sylvain
Auteur

Oui mais comment se passe t'il pour les champs name, created , updated ?
Comment faire pour par exemple , au moment d'une sauvegarde automatique, que les champs, meme s'ils n'ont pas le bon nom puisse quand meme fonctionné comme s'ils etait bien nommé

EXTRAIT DE LA DOC CAKEPHP:

displayField
L’attribut displayField spécifie le champ de la base de données qui doit être utilisé comme label pour un enregistrement. Le label est utilisé dans le scaffolding et dans les appels avec find('list'). Le model va utiliser name ou title, par défaut.

Par exemple, pour utiliser le champ username:

class User extends AppModel {
    public $displayField = 'username';
}

Updated et created: A la main dans les méthode edit et add. Ou faire un afterSave dans AppModel qui se déclenchera apres un enregistrement ou modification et mettra a jour les champs en question histoire d'automatiser la chose.

sylvain
Auteur

donc le displayField ne sert que pour name,title, et pour les autres on se débrouille

D'après la doc, ouaip!